Android 如何从微调器选择在imageview中显示和显示图像

Android 如何从微调器选择在imageview中显示和显示图像,android,android-layout,android-intent,android-widget,Android,Android Layout,Android Intent,Android Widget,我希望能够从微调器中选择一个项目,并在图像视图中显示该项目。我已经尝试过这样做,下面是我的示例代码。还有别的办法吗 活动课 public class Campsites extends Activity{ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState);

我希望能够从
微调器
中选择一个项目,并在
图像视图
中显示该项目。我已经尝试过这样做,下面是我的示例代码。还有别的办法吗

活动课

    public class Campsites  extends Activity{ 
            @Override 
                public void onCreate(Bundle savedInstanceState) { 
                super.onCreate(savedInstanceState); 
                setContentView(R.layout.campsites); 


                Spinner spinner = (Spinner) findViewById(R.id.spinner1); 
                ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this, R.array.Camp_Site_Facilities, android.R.layout.simple_spinner_item); 
                adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); 
                spinner.setAdapter(adapter); 
            }

    public void onItemSelected(AdapterView<?> parent, View view, 
            int pos, long id) {

            ((ImageView) findViewById(R.id.imageView1)).setImageResource(0);
            ((ImageView) findViewById(R.id.imageView1)).setImageResource(R.drawable.bergendal1);


    }

    public void onNothingSelected(AdapterView<?> parent) {
        // Another interface callback
    }
}
公共类营地扩展活动{
@凌驾
创建时的公共void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(右布局、营地);
微调器微调器=(微调器)findViewById(R.id.spinner1);
ArrayAdapter=ArrayAdapter.createFromResource(这个,R.array.Camp\u站点\u设施,android.R.layout.simple\u微调器\u项);
setDropDownViewResource(android.R.layout.simple\u微调器\u下拉菜单\u项);
旋转器。设置适配器(适配器);
}
已选择公共视图(AdapterView父视图、视图、,
内部位置,长id){
((ImageView)findViewById(R.id.imageView1)).setImageResource(0);
((ImageView)findViewById(R.id.imageView1)).setImageResource(R.drawable.bergendal1);
}
未选择公共无效(AdapterView父级){
//另一个接口回调
}
}
布局XML

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:src="@drawable/elephant" >

<Spinner
    android:id="@+id/spinner1"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentTop="true"
    android:layout_centerHorizontal="true" />

<ImageView
    android:id="@+id/imageView1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_alignParentTop="true"
    android:scaleType="fitXY"/>

我已经用字符串创建了这个

 <string-array name="Camp_Site_Facilities">
    <item>Berg en Dal</item>
    <item>Crocodile Bridge</item>
    <item>Letaba</item>
    <item>Lower Sabie</item>
    <item>Mopani</item>
    <item>Olifants</item>
    <item>Orpen</item>
    <item>Pretoriuskop</item>
    <item>Punda Maria</item>
    <item>Satara</item>
    <item>Shingwedzi</item>
    <item>Skukuza</item>
</string-array>

伯格达尔
鳄鱼桥
勒塔巴
下沙比
莫帕尼
奥利芬兹
奥本
普雷托里乌斯科普
蓬达玛丽亚酒店
萨塔拉
辛威兹
斯库库扎
如有任何帮助,我们将不胜感激。

请检查此功能是否有效

spinner.setOnItemSelectedListener(new OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> parentView, View selectedItemView, int position, long id) {
    // your code for setting the image based on the item clicked....here
}

@Override
public void onNothingSelected(AdapterView<?> parentView) {
    // your code here
}

});
spinner.setOnItemSelectedListener(新的OnItemSelectedListener(){
@凌驾
已选择公共视图(AdapterView父视图、视图selectedItemView、整型位置、长id){
//根据单击的项目设置图像的代码…此处
}
@凌驾
未选择公共无效(AdapterView父视图){
//你的代码在这里
}
});

您在使用此代码时是否遇到任何问题,或者只是在等待更好的代码?它似乎不起作用。此微调器工作正常,但当我选择一个项目时,不会发生任何事情。因此,在从微调器中选择项目后,我不太确定需要什么代码来显示图像。更好的代码将非常有用。:-)我认为您需要为微调器设置侦听器。。。我找不到为微调器设置侦听器的代码。尝试下面的答案谢谢,但它只会显示图像,但无法在图像之间切换。我是否需要为图像插入另一个字符串,或者请您向我展示切换图像的代码。我的所有图像都在res/drawable文件夹中。这是我第一次使用微调器。请尝试使用字符串和整数维护hashmap,其中字符串是Camp_Site_Facilities数组中的名称,整数是R.drawable.bergendal1。我不确定,但请尝试一下。谢谢,我会尝试一下。谢谢你的帮助。如果不行,我会告诉你的。我想那个么我会回到滑动抽屉,这样做。