[연습문제]
5
activitiy_main.xml
더보기
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 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"
android:orientation="vertical">
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="새 화면 열기"
android:id="@+id/btnNewActivity"/>
</LinearLayout>
second.xml
더보기
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 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"
android:orientation="vertical">
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="새 화면 열기"
android:id="@+id/btnNewActivity2"/>
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="돌아가기"
android:id="@+id/btnReturn"/>
</LinearLayout>
third.xml
더보기
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 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">
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="돌아가기"
android:id="@+id/btnReturn2"/>
</LinearLayout>
AndroidManifest.xml
더보기
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.cookandroid.project10_1">
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/Theme.Project10_1">
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".SecondActivity" android:label="Second 액티비티"/>
<activity android:name=".ThirdActivity" android:label="Third 액티비티"/>
</application>
</manifest>
MainActivity.java
더보기
package com.cookandroid.project10_1;
import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.RadioButton;
import android.widget.RadioGroup;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button btnNewActivity = (Button) findViewById(R.id.btnNewActivity);
btnNewActivity.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(getApplicationContext(), SecondActivity.class);
startActivity(intent);
}
});
}
}
SecondActivity.java
더보기
package com.cookandroid.project10_1;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import androidx.annotation.Nullable;
public class SecondActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.second);
Button btnNewActivity = (Button) findViewById(R.id.btnNewActivity2);
Button btnReturn = (Button) findViewById(R.id.btnReturn);
btnNewActivity.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(getApplicationContext(), ThirdActivity.class);
startActivity(intent);
}
});
btnReturn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
finish();
}
});
}
}
ThirdActivity.java
더보기
package com.cookandroid.project10_1;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import androidx.annotation.Nullable;
public class ThirdActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.third);
Button btnReturn = (Button) findViewById(R.id.btnReturn2);
btnReturn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
finish();
}
});
}
}
6
activitiy_main.xml
더보기
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 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"
android:orientation="vertical"
tools:context=".MainActivity">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="3">
<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/iv1"
android:layout_margin="5dp"
android:layout_weight="1"
android:src="@drawable/acha"/>
<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/iv2"
android:layout_margin="5dp"
android:layout_weight="1"
android:src="@drawable/cchi"/>
<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/iv3"
android:layout_margin="5dp"
android:layout_weight="1"
android:src="@drawable/eevee"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="3">
<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/iv4"
android:layout_margin="5dp"
android:layout_weight="1"
android:src="@drawable/haemu"/>
<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/iv5"
android:layout_margin="5dp"
android:layout_weight="1"
android:src="@drawable/lan"/>
<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/iv6"
android:layout_margin="5dp"
android:layout_weight="1"
android:src="@drawable/nuni"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="3">
<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/iv7"
android:layout_margin="5dp"
android:layout_weight="1"
android:src="@drawable/paeng"/>
<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/iv8"
android:layout_margin="5dp"
android:layout_weight="1"
android:src="@drawable/pichu"/>
<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/iv9"
android:layout_margin="5dp"
android:layout_weight="1"
android:src="@drawable/pika"/>
</LinearLayout>
<Button
android:layout_width="match_parent"
android:layout_height="0dp"
android:id="@+id/btnResult"
android:layout_weight="1"
android:text="투표 종료"/>
</LinearLayout>
result.xml
더보기
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 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"
android:orientation="vertical"
tools:context=".MainActivity">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:id="@+id/btnStart"
android:text=" 자동보기 시작 "/>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:id="@+id/btnStop"
android:text=" 자동보기 정지 "/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:orientation="vertical"
android:layout_height="match_parent">
<ViewFlipper
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="9"
android:id="@+id/viewFlipper">
<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/img1"/>
<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/img2"/>
<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/img3"/>
<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/img4"/>
<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/img5"/>
<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/img6"/>
<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/img7"/>
<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/img8"/>
<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/img9"/>
</ViewFlipper>
<Button
android:id="@+id/btnReturn"
android:layout_weight="1"
android:layout_span="2"
android:text="돌아가기"
android:layout_gravity="center"
android:layout_height="wrap_content"
android:layout_width="match_parent" />
</LinearLayout>
</LinearLayout>
MainActivity.java
더보기
package com.cookandroid.a10_6;
import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.Toast;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
setTitle("포켓몬 선호도 투표");
final int voteCount[] = new int[9];
for (int i = 0; i < 9; i++) {
voteCount[i] = 0;
}
ImageView image[] = new ImageView[9];
Integer imageId[] = {R.id.iv1, R.id.iv2, R.id.iv3, R.id.iv4, R.id.iv5, R.id.iv6, R.id.iv7, R.id.iv8, R.id.iv9};
final String imgName[] = {"아차모", "찌르성게", "이브이", "해무기", "란클루스", "누니머기", "팽도리", "피츄", "피카츄"};
for (int i = 0; i < imageId.length; i++) {
final int index;
index = i;
image[index] = (ImageView) findViewById(imageId[index]);
image[index].setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
voteCount[index]++;
Toast.makeText(getApplicationContext(), imgName[index] + ": 총 " + voteCount[index] + " 표", Toast.LENGTH_SHORT).show();
}
});
Button btnFinish = (Button) findViewById(R.id.btnResult);
btnFinish.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(getApplicationContext(), ResultActivity.class);
intent.putExtra("VoteCount", voteCount);
intent.putExtra("ImageName", imgName);
startActivity(intent);
}
});
}
}}
ResultActivity.java
더보기
package com.cookandroid.a10_6;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.ViewFlipper;
public class ResultActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.result);
setTitle("투표 결과");
Button btnStart, btnStop;
final ViewFlipper viewFlipper;
Intent intent = getIntent();
int[] voteResult = intent.getIntArrayExtra("VoteCount");
String[] imageName = intent.getStringArrayExtra("ImageName");
btnStart = (Button) findViewById(R.id.btnStart);
btnStop = (Button) findViewById(R.id.btnStop);
viewFlipper= (ViewFlipper) findViewById(R.id.viewFlipper);
Integer ivID[] = {R.id.img1, R.id.img2, R.id.img3, R.id.img4, R.id.img5, R.id.img6, R.id.img7, R.id.img8, R.id.img9};
Integer imageFileID[] = {R.drawable.acha, R.drawable.cchi, R.drawable.eevee, R.drawable.haemu, R.drawable.lan, R.drawable.nuni, R.drawable.paeng, R.drawable.pichu, R.drawable.pika};
Integer result[] = new Integer[9];
ImageView iv[] = new ImageView[9];
for(int i = 0; i<result.length; i++){
result[i] = 0;
}
for(int i = 0; i<iv.length; i++){
iv[i] = (ImageView) findViewById(ivID[i]);
}
for(int i=0; i<8; i++){
for(int j=i+1; j<9; j++){
if(voteResult[i]<voteResult[j]){result[i]++;}
else{result[j]++;}
}
}
for(int i=0;i<9;i++){
iv[result[i]].setImageResource(imageFileID[i]);
}
btnStart.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
viewFlipper.setFlipInterval(1000);
viewFlipper.startFlipping();
}
});
btnStop.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
viewFlipper.stopFlipping();
}
});
Button btnReturn = (Button) findViewById(R.id.btnReturn);
btnReturn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
finish();
}
});
}
}
'DEVELOPMENT' 카테고리의 다른 글
[Android Studio] Chapter 11 연습문제 (0) | 2021.07.07 |
---|---|
[Android Studio] Chapter 11 직접 풀어보기 (0) | 2021.07.07 |
[Android Studio] Chapter 10 직접 풀어보기 (0) | 2021.07.06 |
[Android Studio] Chapter 9 연습문제 (0) | 2021.07.05 |
[Android Studio] Chapter 9 직접 풀어보기 (0) | 2021.07.05 |