在微调器上设置适配器,但得到空列表
问题描述:
当我尝试在片段中的微调器上设置适配器并运行应用程序后,一切正常,但微调器中的列表为空。在搜索了许多像我的问题这样的案例之后,我仍然无法弄清楚原因。 任何意见将不胜感激。在微调器上设置适配器,但得到空列表
public class DrinkFragment extends Fragment {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View v = inflater.inflate(R.layout.fragment_drink, container, false);
mSpDrinkItem = (Spinner)v.findViewById(R.id.sp_drink_list);
ArrayAdapter<CharSequence> drinkAd = ArrayAdapter.createFromResource(getActivity(), R.array.drink_item, android.R.layout.simple_spinner_item);
drinkAd.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
mSpDrinkItem.setAdapter(drinkAd);
mSpTemp = (Spinner)v.findViewById(R.id.sp_temp_list);
mBtnOrder = (Button)v.findViewById(R.id.btn_order);
mTxvOrderedList = (TextView)v.findViewById(R.id.txv_ordered_list);
setListeners();
return v;
}
答
嗯......我没有看到你发布的代码有什么问题。我想知道问题出在你的fragment_drink.xml文件上吗?
在任何情况下,我都会根据您的数据汇总一个工作示例。
MainActivity:
package com.example.spinnerfragmenttest;
import android.app.Activity;
import android.os.Bundle;
public class MainActivity extends Activity
{
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
}
DrinkFragment:
package com.example.spinnerfragmenttest;
import android.app.Fragment;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.Spinner;
public class DrinkFragment extends Fragment
{
private Spinner mSpDrinkItem;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
{
View v = inflater.inflate(R.layout.fragment_drink, container, false);
mSpDrinkItem = (Spinner)v.findViewById(R.id.sp_drink_list);
ArrayAdapter<CharSequence> drinkAd = ArrayAdapter.createFromResource(getActivity(), R.array.drink_item, android.R.layout.simple_spinner_item);
drinkAd.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
mSpDrinkItem.setAdapter(drinkAd);
return v;
}
}
activity_main.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" >
<fragment android:name="com.example.spinnerfragmenttest.DrinkFragment"
android:id="@+id/drink_fragment"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</RelativeLayout>
fragment_drink.xml:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<Spinner android:id="@+id/sp_drink_list"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"/>
</RelativeLayout>
arrays.xml:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string-array name="drink_item">
<item>珍珠奶茶</item>
<item>波霸奶茶</item>
<item>仙草凍奶茶</item>
<item>檸檬汁</item>
</string-array>
</resources>
这将产生以下微调(显示正常,在下拉模式)
什么是您的drink_item阵列是什么样子? – 2014-09-23 17:19:23
感谢您的回答,它看起来像:- 珍珠奶茶
- 波霸奶茶
- 仙草冻奶茶
- 柠檬汁
串阵列> –
Javakid
2014-09-23 17:52:20