SelectedItem of Spinner always null(微调控制项的SelectedItem始终为空)
本文介绍了微调控制项的SelectedItem始终为空的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我为我的微调控件创建了自定义数组适配器,但是当从列表中单击一项时,它没有被选中。以下是我的代码:
public class CustomArrayAdapter : BaseAdapter
{
readonly LayoutInflater inflater;
List<string> items;
public CustomArrayAdapter(Context context, List<string> items)
{
this.inflater = LayoutInflater.FromContext(context);
this.items = items;
}
public override int Count
{
get { return items.Count; }
}
public override Object GetItem(int position)
{
return null;
}
public override long GetItemId(int position)
{
return position;
}
public override View GetView(int position, View convertView, ViewGroup parent)
{
var view = convertView ?? inflater.Inflate(Resource.Layout.SpinnerItem, parent, false);
var item = items[position];
view.FindViewById<TextView>(Resource.Id.spinnerItem).Text = item;
return view;
}
}
和微调控件布局:
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/spinnerItem"
android:layout_width="fill_parent"
android:layout_height="50dp"
android:textColor="@color/background_color"
android:textSize="25dp"
android:gravity="center_vertical"
android:textAlignment="center" />
这就是我使用适配器的方式:
CustomArrayAdapter adapter = new CustomArrayAdapter(this, spinnerItems.ToList());
spinnerLoginName.Adapter = adapter;
推荐答案
您需要从GetItem
方法内部的列表中返回值,而不是将null
作为
public override Object GetItem(int position)
{
return items.get(position);
}
这篇关于微调控制项的SelectedItem始终为空的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
沃梦达教程
本文标题为:微调控制项的SelectedItem始终为空
基础教程推荐
猜你喜欢
- Android:对话框关闭而不调用关闭 2022-01-01
- 如何在没有IB的情况下将2个按钮添加到右侧的UINavigationbar? 2022-01-01
- Kivy Buildozer 无法构建 apk,命令失败:./distribute.sh -m “kivy"d 2022-01-01
- 当从同一个组件调用时,两个 IBAction 触发的顺序是什么? 2022-01-01
- 如何在 UIImageView 中异步加载图像? 2022-01-01
- android 应用程序已发布,但在 google play 中找不到 2022-01-01
- 在 gmail 中为 ios 应用程序检索朋友的朋友 2022-01-01
- UIWebView 委托方法 shouldStartLoadWithRequest:在 WKWebView 中等效? 2022-01-01
- 如何在 iPhone 上显示来自 API 的 HTML 文本? 2022-01-01
- 如何让对象对 Cocos2D 中的触摸做出反应? 2022-01-01