使用片段时微调器显示为空
Spinner shows empty when use fragment
我有一个正常的微调器 activity 并且想尝试在片段中使用微调器但是在片段中,当 运行 它时显示为空
example
我的代码在 onCreateView
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View vista =inflater.inflate(R.layout.fragment_pag1,container,false);
calcular= (Button)vista.findViewById(R.id.button);
etd=(EditText)vista.findViewById(R.id.editText);
resultadocp=(TextView)vista.findViewById(R.id.textView3);
lista = (Spinner)vista.findViewById(R.id.spinner);
String []opciones={"one","two","three","four","five"};
ArrayAdapter adapter = new ArrayAdapter(getActivity(),android.R.layout.simple_list_item_1, opciones);
lista.setAdapter(adapter); return vista; }
如果仅缺少标题且下拉菜单有效,则很容易
spinner.setPrompt("Title"); or xml: android:prompt="@string/title"
顺便说一句,你能详细说明问题吗xml文件使用
spinner.setOnItemSelectedListener(this);
并覆盖
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
// On selecting a spinner item
String item = parent.getItemAtPosition(position).toString();
// Showing selected spinner item
}
例一:
你可以用这个
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this.getActivity(), android.R.layout.simple_spinner_item, opciones);
adapter.setDropDownViewResource(android.R.layout.simple_dropdown_item_1line);
lista.setAdapter(adapter);
`代替
ArrayAdapter adapter = new ArrayAdapter(getActivity(),android.R.layout.simple_list_item_1, opciones);
lista.setAdapter(adapter);
例二:
创建微调器xml
<Spinner
android:id="@+id/spinner"
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
将您的微调器字符串添加到 string.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string-array name="string_array">
<item>one</item>
<item>two</item>
<item>three</item>
<item>four</item>
<item>five</item>
</string-array>
将此代码添加到您的片段中
Spinner spinner = (Spinner)lista.findViewById(R.id.spinner);
ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this.getActivity(),
R.array.string_array, android.R.layout.simple_spinner_item);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner.setAdapter(adapter);
试试这个...
我希望它对你有用...
我有一个正常的微调器 activity 并且想尝试在片段中使用微调器但是在片段中,当 运行 它时显示为空 example
我的代码在 onCreateView
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View vista =inflater.inflate(R.layout.fragment_pag1,container,false);
calcular= (Button)vista.findViewById(R.id.button);
etd=(EditText)vista.findViewById(R.id.editText);
resultadocp=(TextView)vista.findViewById(R.id.textView3);
lista = (Spinner)vista.findViewById(R.id.spinner);
String []opciones={"one","two","three","four","five"};
ArrayAdapter adapter = new ArrayAdapter(getActivity(),android.R.layout.simple_list_item_1, opciones);
lista.setAdapter(adapter); return vista; }
如果仅缺少标题且下拉菜单有效,则很容易
spinner.setPrompt("Title"); or xml: android:prompt="@string/title"
顺便说一句,你能详细说明问题吗xml文件使用
spinner.setOnItemSelectedListener(this);
并覆盖
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
// On selecting a spinner item
String item = parent.getItemAtPosition(position).toString();
// Showing selected spinner item
}
例一:
你可以用这个
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this.getActivity(), android.R.layout.simple_spinner_item, opciones);
adapter.setDropDownViewResource(android.R.layout.simple_dropdown_item_1line);
lista.setAdapter(adapter);
`代替
ArrayAdapter adapter = new ArrayAdapter(getActivity(),android.R.layout.simple_list_item_1, opciones);
lista.setAdapter(adapter);
例二:
创建微调器xml
<Spinner
android:id="@+id/spinner"
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
将您的微调器字符串添加到 string.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string-array name="string_array">
<item>one</item>
<item>two</item>
<item>three</item>
<item>four</item>
<item>five</item>
</string-array>
将此代码添加到您的片段中
Spinner spinner = (Spinner)lista.findViewById(R.id.spinner);
ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this.getActivity(),
R.array.string_array, android.R.layout.simple_spinner_item);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner.setAdapter(adapter);
试试这个... 我希望它对你有用...