我对Android开发很新,我似乎有一个我无法理解的问题。我有一个微调器,值设置得很好,但我的提示没有出现。我试图在xml和java代码中都设置它,但两者都没有。以下是我的配置。我觉得我错过了一些基本的东西,但我不知道它到底是什么。
任何帮助将不胜感激。克雷格
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#000000" >
<Spinner
android:id="@+id/band"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentRight="true"
android:layout_marginTop="72dp"
android:prompt="@string/year_prompt"
android:textColor="#F0F0F0" />
<Spinner
android:id="@+id/spinner1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true"
android:layout_marginTop="28dp"
android:entries="@array/year_array"
android:prompt="@string/year_prompt"
android:textColor="#F0F0F0" />
</RelativeLayout>
<string name="year_prompt">Select A Year</string>
<string-array name="year_array">
<item >2000</item>
<item >2001</item>
<item >2002</item>
<item >2003</item>
<item >2004</item>
<item >2005</item>
</string-array>
答案 0 :(得分:4)
你的升级版没有显示的原因是因为在android 3.0+中,提示没有空间。
这是一个3.0之前的旋转器的屏幕截图
提示位于顶部,其中显示“选择国家/地区”,屏幕截图为http://www.mkyong.com/android/android-spinner-drop-down-list-example/
因此不再显示提示。
有几种可能性。
首先,您可以在list-array
的顶部添加一个与您的提示相同的项目
否则,您可以使用按钮并从中创建下拉列表。
首先,在你的布局中用一个按钮替换你的微调器,并给它提供你提示的文本
然后将您的微调器上的项目列表移动到名为optionmenu.xml
然后声明您的按钮并为其设置onClickListener
。
在该方法中,输入以下代码
在第14行,您指定的布局是您的optionmenu布局
public void showPopup(View v) {
PopupMenu popup = new PopupMenu(this, v);
MenuInflater inflater = popup.getMenuInflater();
inflater.inflate(R.layout.optionmenu, popup.getMenu());
popup.show();
} 当您调用此方法时,您需要执行以下操作
View p = (View)findViewById(R.id.spinner button);
showPopup(p);
在此代码价格中,View p是您要显示菜单顶角的位置的视图。所以在这种情况下,它将是你的按钮
请参阅此处的答案以实施它 - android menu code not working
在每个case:.....
语句中,添加一行将按钮文本设置为字符串。
case R.id.item1:
button.setText("item1");
&GT;
这里有一些其他好的解决方案 -
How to make an Android Spinner with initial text "Select One"