Reputation: 1077
i am developing an android application. here is what i want.
there is gender spinner;male and female. when the user choose male, it will appear image1, but when choose female, the image1 disappear. i am thinking of using set.alpha(0).
here is my code.
public class Froyo2Activity extends Activity {
Spinner genderSpin;
ImageView image1;
Button submit;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_froyo2);
addButtonListener();
}
public void addButtonListener(){
submit = (Button)findViewById(R.id.submit);
image1 = (ImageView)findViewById(R.id.imageView1);
genderSpin = (Spinner)findViewById(R.id.gender_spin);
submit.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View arg0) {
if(genderSpin.getSelectedItemPosition() == 1){
image1.setAlpha(0);
}
}
});
}
}
this is my code froyo2.xml in res/layout
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/widget54"
android:layout_width="wrap_content"
android:layout_height="fill_parent" >
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="wrap_content"
android:layout_height="819dp"
tools:context=".RelativeActivity" >
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:text="Welcome"
android:textAppearance="?android:attr/textAppearanceSmall" />
<LinearLayout
android:id="@+id/linearLayout1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@+id/textView1" >
<TextView
android:id="@+id/textView2"
android:layout_width="131dp"
android:layout_height="wrap_content"
android:text="Priority Level"
android:textAppearance="?android:attr/textAppearanceMedium" />
</LinearLayout>
<LinearLayout
android:id="@+id/linearLayout2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignTop="@+id/linearLayout1"
android:layout_toRightOf="@+id/linearLayout1" >
<Spinner
android:id="@+id/prior_spin"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:entries="@array/priorArray"
android:prompt="@string/prior_prompt" />
</LinearLayout>
<LinearLayout
android:id="@+id/linearLayout3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignTop="@+id/linearLayout2"
android:layout_toRightOf="@+id/linearLayout2" >
</LinearLayout>
<EditText
android:id="@+id/editText2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/linearLayout2"
android:layout_alignParentRight="true"
android:layout_below="@+id/editText1"
android:ems="10" >
<requestFocus />
</EditText>
<TextView
android:id="@+id/textView6"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/button1"
android:layout_alignBottom="@+id/button1"
android:layout_alignParentLeft="true"
android:text="Age"
android:textAppearance="?android:attr/textAppearanceMedium" />
<Button
android:id="@+id/button2"
style="?android:attr/buttonStyleSmall"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/button1"
android:layout_alignRight="@+id/button1"
android:layout_below="@+id/button1"
android:text="5.1" />
<Button
android:id="@+id/button3"
style="?android:attr/buttonStyleSmall"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/button2"
android:layout_alignRight="@+id/button2"
android:layout_below="@+id/button2"
android:text="Select ETA" />
<TextView
android:id="@+id/textView7"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@+id/button1"
android:text="BP/P"
android:textAppearance="?android:attr/textAppearanceMedium" />
<TextView
android:id="@+id/textView8"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/button3"
android:layout_alignBottom="@+id/button3"
android:layout_alignLeft="@+id/textView9"
android:text="ETA"
android:textAppearance="?android:attr/textAppearanceMedium" />
<TextView
android:id="@+id/textView9"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@+id/button3"
android:layout_marginTop="15dp"
android:text="Location"
android:textAppearance="?android:attr/textAppearanceMedium" />
<Button
android:id="@+id/submit"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:layout_alignRight="@+id/editText6"
android:text="Submit 5.1" />
<EditText
android:id="@+id/editText3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/button3"
android:layout_alignParentRight="true"
android:layout_below="@+id/button3"
android:ems="10"
android:inputType="textPostalAddress" />
<EditText
android:id="@+id/editText4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/editText3"
android:layout_alignParentRight="true"
android:layout_below="@+id/editText3"
android:ems="10" />
<TextView
android:id="@+id/textView10"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/textView5"
android:layout_alignTop="@+id/editText4"
android:layout_toLeftOf="@+id/editText4"
android:text="Special Handling"
android:textAppearance="?android:attr/textAppearanceMedium" />
<TextView
android:id="@+id/textView11"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/textView10"
android:layout_below="@+id/editText4"
android:layout_marginTop="15dp"
android:text="Drug"
android:textAppearance="?android:attr/textAppearanceMedium" />
<EditText
android:id="@+id/editText5"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_below="@+id/editText4"
android:layout_toRightOf="@+id/textView10"
android:ems="10" />
<TextView
android:id="@+id/textView4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@+id/linearLayout2"
android:text="Firstname"
android:textAppearance="?android:attr/textAppearanceMedium" />
<EditText
android:id="@+id/editText1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/linearLayout2"
android:layout_alignParentRight="true"
android:layout_alignTop="@+id/textView4"
android:ems="10" />
<TextView
android:id="@+id/textView5"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/editText2"
android:layout_alignBottom="@+id/editText2"
android:layout_alignRight="@+id/textView4"
android:text="Lastname"
android:textAppearance="?android:attr/textAppearanceMedium" />
<Button
android:id="@+id/button1"
style="?android:attr/buttonStyleSmall"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/editText2"
android:layout_alignParentRight="true"
android:layout_below="@+id/editText2"
android:text="OriFroyoAge" />
<EditText
android:id="@+id/editText6"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/editText5"
android:layout_alignParentRight="true"
android:layout_below="@+id/editText5"
android:ems="10" />
<TextView
android:id="@+id/textView12"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/editText6"
android:layout_alignBottom="@+id/editText6"
android:layout_alignParentLeft="true"
android:text="Diagnostic"
android:textAppearance="?android:attr/textAppearanceMedium" />
<ImageView
android:id="@+id/imageView2"
android:layout_width="wrap_content"
android:layout_height="300dp"
android:layout_alignParentRight="true"
android:layout_alignTop="@+id/imageView1"
android:layout_toRightOf="@+id/imageView1"
android:src="@drawable/back2" />
<ImageView
android:id="@+id/imageView1"
android:layout_width="wrap_content"
android:layout_height="300dp"
android:layout_below="@+id/editText6"
android:layout_toRightOf="@+id/textView10"
android:src="@drawable/malefull" />
<TextView
android:id="@+id/textView13"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignTop="@+id/imageView1"
android:layout_marginTop="124dp"
android:text="Injury(s)"
android:textAppearance="?android:attr/textAppearanceMedium" />
<TextView
android:id="@+id/textView3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/textView1"
android:layout_toRightOf="@+id/linearLayout2"
android:layout_weight="1"
android:text="Gender"
android:textAppearance="?android:attr/textAppearanceMedium" />
<Spinner
android:id="@+id/gender_spin"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_alignTop="@+id/textView3"
android:entries="@array/genderArray"
android:prompt="@string/gender_prompt" />
</RelativeLayout>
</ScrollView>
and this one is in res/layout-land
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/widget54"
android:layout_width="wrap_content"
android:layout_height="fill_parent" >
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="798dp"
android:layout_height="wrap_content"
tools:context=".RelativeActivity" >
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:text="Welcome"
android:textAppearance="?android:attr/textAppearanceSmall" />
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@+id/textView1"
android:text="Priority Level"
android:textAppearance="?android:attr/textAppearanceMedium" />
<Spinner
android:id="@+id/spinner1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@+id/textView2"
android:layout_toLeftOf="@+id/spinner2"
android:entries="@array/priorArray"
android:prompt="@string/prior_prompt" />
<Spinner
android:id="@+id/spinner2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignRight="@+id/textView3"
android:layout_below="@+id/textView3"
android:layout_toRightOf="@+id/textView7"
android:entries="@array/genderArray"
android:prompt="@string/gender_prompt" />
<TextView
android:id="@+id/textView4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@+id/spinner1"
android:text="Firstname"
android:textAppearance="?android:attr/textAppearanceMedium" />
<EditText
android:id="@+id/editText1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignRight="@+id/spinner2"
android:layout_below="@+id/textView4"
android:ems="10" >
<requestFocus />
</EditText>
<TextView
android:id="@+id/textView5"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@+id/editText1"
android:text="Lastname"
android:textAppearance="?android:attr/textAppearanceMedium" />
<EditText
android:id="@+id/editText2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignRight="@+id/editText1"
android:layout_below="@+id/textView5"
android:ems="10" />
<TextView
android:id="@+id/textView6"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@+id/editText2"
android:text="Age"
android:textAppearance="?android:attr/textAppearanceMedium" />
<Button
android:id="@+id/button1"
style="?android:attr/buttonStyleSmall"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignRight="@+id/textView5"
android:layout_below="@+id/textView6"
android:text="Age" />
<Button
android:id="@+id/button2"
style="?android:attr/buttonStyleSmall"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignTop="@+id/button1"
android:layout_toLeftOf="@+id/button3"
android:layout_toRightOf="@+id/textView4"
android:text="BP/P" />
<Button
android:id="@+id/button3"
style="?android:attr/buttonStyleSmall"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/textView8"
android:layout_alignRight="@+id/editText2"
android:layout_below="@+id/textView8"
android:text="ETA" />
<TextView
android:id="@+id/textView7"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@+id/button2"
android:layout_toRightOf="@+id/textView4"
android:text="BP/P"
android:textAppearance="?android:attr/textAppearanceMedium" />
<TextView
android:id="@+id/textView8"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@+id/button2"
android:layout_alignLeft="@+id/textView3"
android:text="ETA"
android:textAppearance="?android:attr/textAppearanceMedium" />
<ImageView
android:id="@+id/imageView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/textView1"
android:layout_toLeftOf="@+id/imageView1"
android:src="@drawable/malefull" />
<TextView
android:id="@+id/textView3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@+id/spinner1"
android:layout_toLeftOf="@+id/imageView2"
android:text="Gender"
android:textAppearance="?android:attr/textAppearanceMedium" />
<TextView
android:id="@+id/textView9"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@+id/button1"
android:text="Location"
android:textAppearance="?android:attr/textAppearanceMedium" />
<EditText
android:id="@+id/editText3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@+id/textView9"
android:layout_toLeftOf="@+id/imageView2"
android:ems="10" />
<TextView
android:id="@+id/textView10"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@+id/editText3"
android:text="Special Handling"
android:textAppearance="?android:attr/textAppearanceMedium" />
<EditText
android:id="@+id/editText4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignRight="@+id/editText3"
android:layout_below="@+id/textView10"
android:ems="10" />
<TextView
android:id="@+id/textView11"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@+id/editText4"
android:text="Drug(s)"
android:textAppearance="?android:attr/textAppearanceMedium" />
<EditText
android:id="@+id/editText5"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@+id/textView11"
android:layout_toLeftOf="@+id/imageView2"
android:ems="10" />
<TextView
android:id="@+id/textView12"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@+id/editText5"
android:text="Diagnostic"
android:textAppearance="?android:attr/textAppearanceMedium" />
<EditText
android:id="@+id/editText6"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@+id/textView12"
android:layout_toLeftOf="@+id/imageView2"
android:ems="10" />
<Button
android:id="@+id/submit"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentRight="true"
android:layout_below="@+id/editText6"
android:text="Submit" />
<ImageView
android:id="@+id/imageView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@+id/imageView2"
android:layout_alignParentRight="true"
android:src="@drawable/back2" />
</RelativeLayout>
</ScrollView>
then i run it in the emulator and when click the button submit it said force the application closed. i have making the breakpoints and i think genderSpin.getSelectedItemPosition()
is the cause. but how can i have the value that user choose for the spinner?
your help is appreciate.
===EDIT FOR SOLUTION.STATUS CLOSED===
thank you for those who helped me a lot with this. this is my final solution. i need to make SpinnerAdapter first to retrieved the context of the spinner selected.
i also followed tutorial from here
my last code would be
genderSpin = (Spinner)findViewById(R.id.gender_spin);
ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this,
R.array.genderArray, android.R.layout.simple_spinner_item);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
genderSpin.setAdapter(adapter);
genderSpin.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
public void onItemSelected(AdapterView<?> parent, View arg1, int pos, long arg3){
String fontname = parent.getItemAtPosition(pos).toString();
Toast.makeText(parent.getContext(), "The External Font Is " +fontname, Toast.LENGTH_LONG).show();
}
@Override
public void onNothingSelected(AdapterView<?> arg0) {
// TODO Auto-generated method stub
}
});
after selected spinner item, it will toast out "The External Font Is Female" if choosing female and toast out "The External Font Is Male" if choosing male. Thank you for the helped. Hope this could be good guidance for those who seeking for the help.
Upvotes: 1
Views: 4440
Reputation: 88
Can u please post your spinner OnItemSelectedListener code. In the button onclick only you are added the code for getting spinner position. Below code i am used for getting the user choosed spinner item.
Spinner spinner = (Spinner) findViewById(R.id.spinner);
ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(
this, R.array.planets_array, android.R.layout.simple_spinner_item);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner.setAdapter(adapter);
spinner.setOnItemSelectedListener(listener);
private OnItemSelectedListener listener =new OnItemSelectedListener() {
//do what ever you want to do when item selected
public void onItemSelected(AdapterView<?> parent, View arg1, int pos,
long arg3) {
// TODO Auto-generated method stub
fontname=parent.getItemAtPosition(pos).toString();
Toast.makeText(parent.getContext(), "The External Font Is " +fontname, Toast.LENGTH_LONG).show();
}
}
Upvotes: 2