일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- 크롤링
- 함수
- 자바 오류
- 예외
- 크롤링 오류
- 예제
- HTML역사
- SQL입문
- 생성자
- 자바
- 배열 3요소
- R1C3
- dbms
- 키-값 데이터베이스
- 데이터베이스
- 웹브라우저 수용도
- DoitSQL
- html
- 페이지분석
- 배열 예제
- 함수 선언
- 숫자 형식
- DoitSQL입문
- DoIt
- 자바 예외
- Doit입문SQL
- SQL
- 숫자형식오류
- 우아한테크
- 웹 브라우저 전쟁
Archives
- Today
- Total
프로그래밍
[안드로이드 자바] 메뉴를 이용한 이미지 변경, 이미지 회전(Menu, setRotation) 본문
728x90
반응형
디자인
프로젝트 설명
메뉴를 통해 이미지를 선택할 수 있다
EditText에 입력한 값만큼 이미지가 회전한다
※ drawable 폴더에 jeju1, jeju2, jeju3 이미지가 존재함
xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="20dp"
android:text="각도 입력">
</TextView>
<EditText
android:id="@+id/EditText"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textSize="20dp">
</EditText>
</LinearLayout>
<ImageView
android:id="@+id/ImgView"
android:layout_width="match_parent"
android:layout_height="match_parent">
</ImageView>
</RelativeLayout>
menu.xml
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:id="@+id/ItemRotate"
android:title="그림 회전"></item>
<group
android:checkableBehavior="single">
<item
android:id="@+id/Item1"
android:title="한라산"
android:checked="true">
</item>
<item
android:id="@+id/Item2"
android:title="추자도">
</item>
<item
android:id="@+id/Item3"
android:title="밤섬">
</item>
</group>
</menu>
menu 만드는법
res 폴더 우클릭 > New > Android Resource File
File name: 임의지정
Resource type: Menu 선택
생성(OK)
MainActivity.java
package com.sample.menuimage;
import android.graphics.Color;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.RelativeLayout;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity;
public class MainActivity extends AppCompatActivity {
ImageView imageView;
EditText editText;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
setTitle("제주도 풍경");
imageView = (ImageView) findViewById(R.id.ImgView);
editText = (EditText) findViewById(R.id.EditText);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.menu1,menu);
return super.onCreateOptionsMenu(menu);
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.ItemRotate:
imageView.setRotation(Float.parseFloat(editText.getText().toString()));
return true;
case R.id.Item1:
item.setChecked(true);
imageView.setImageResource(R.drawable.jeju1);
return true;
case R.id.Item2:
item.setChecked(true);
imageView.setImageResource(R.drawable.jeju2);
return true;
case R.id.Item3:
item.setChecked(true);
imageView.setImageResource(R.drawable.jeju3);
return true;
}
return false;
}
}
728x90
반응형
'안드로이드 > 안드로이드 스튜디오' 카테고리의 다른 글
Comments