首先对不起我的英语。我知道这不是很好,但我希望你能理解我。我已经研究了几个小时。我在布局文件中创建了一个微调器,将 spinnerMode 参数设置为“对话框”:
<Spinner
android:id="@+id/spinner2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@+id/llBarra_list"
android:drawSelectorOnTop = "true"
android:prompt="@string/spinner_title"
android:background="@drawable/btn_dropdown_normal"
android:spinnerMode="dialog"/>
当用户按下微调器时,一个对话框会根据以下内容填充一个 ArrayList 中定义的一些选项:
ArrayAdapter<String> dataAdapter = new ArrayAdapter<String>(getActivity().getBaseContext(),android.R.layout.simple_spinner_item, listaHashes);
dataAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner2.setAdapter(dataAdapter);
spinner2.setOnItemSelectedListener(new OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> arg0, View arg1,int arg2, long arg3) {
String text = listaHashes.get(arg2);
lblHash.setText(text);
ArrayList<String> tweetsEsteHash= new ArrayList<String>();
tweetsEsteHash.add(text);
receiveTweets(tweetsEsteHash);
}
@Override
public void onNothingSelected(AdapterView<?> arg0) {
}
});
该对话框不会填充父母的宽度和高度,这对我的意图很好。我需要当用户在对话框之外触摸时,对话框会自行消失。我应该使用自定义微调器对话框创建自定义微调器,还是可以使用一些选项来实现这一点?