안녕하세요. 스타입니다.
안드로이드 radio group, radio button을 이용한 기능.
가위바위 보를 선택하면 해당 내용을 아래에 출력해 줍니다.
activity_main.xml
<RadioGroup xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/radio"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">
<RadioButton
android:id="@+id/radio1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Rock"/>
<RadioButton
android:id="@+id/radio2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="paper"/>
<RadioButton
android:id="@+id/radio3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="scissors"/>
</RadioGroup>
MainActivity.java
package com.example.radiogroup;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.widget.RadioGroup;
import android.widget.RadioGroup.OnCheckedChangeListener;
import android.widget.Toast;
public class MainActivity extends Activity implements android.widget.RadioGroup.OnCheckedChangeListener {
RadioGroup radio;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
radio = (RadioGroup)findViewById(R.id.radio);
radio.setOnCheckedChangeListener(this);
}
@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
// TODO Auto-generated method stub
if(radio.getCheckedRadioButtonId() == R.id.radio1)
Toast.makeText(this, "rock", Toast.LENGTH_SHORT).show();
if(radio.getCheckedRadioButtonId() == R.id.radio2)
Toast.makeText(this, "paper", Toast.LENGTH_SHORT).show();
if(radio.getCheckedRadioButtonId() == R.id.radio3)
Toast.makeText(this, "scissors", Toast.LENGTH_SHORT).show();
}
}
아래는 수행 결과
check box
구현 못함. 다음에 다른 예제로 재구현 해보겠습니다.
응용과정.
이제 위에 것들을 이용한 간단한 예제 어플리케이션
텍스트 박스에 입력한 텍스트를 confirm 버튼을 누르면 위에 출력해 주는 앱입니다.
activity_main.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">
<TextView
android:id="@+id/text"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="fill the text"/>
<EditText
android:id="@+id/edittext"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<requestFocus/>
</EditText>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="horizontal" >
<Button
android:id="@+id/ok"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="confirm" />
<Button
android:id="@+id/cancel"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="cancel" />
</LinearLayout>
</LinearLayout>
MainActivity.java
package com.example.layoutwiget;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
public class MainActivity extends Activity {
TextView txt;
EditText edit;
Button btn_ok;
Button btn_cancel;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
txt = (TextView)findViewById(R.id.text);
edit = (EditText)findViewById(R.id.edittext);
btn_ok = (Button)findViewById(R.id.ok);
btn_cancel = (Button)findViewById(R.id.cancel);
btn_ok.setOnClickListener(new OnClickListener(){
public void onClick(View v){
String str = null;
str = edit.getText().toString();
txt.setText(str);
}
});
btn_cancel.setOnClickListener(new OnClickListener(){
public void onClick(View v){
finish();
}
});
}
}
실행결과는 아래와 같네요.