Articles of android arrayadapter

Android如何知道哪个checkbox被选中

我正在做我的第一个Android应用程序,我遇到了一个问题,我无法在Google上find答案。 我想要一个带有checkbox的项目列表。 我希望项目本身和checkbox都是可点击的。 public class MyItem extends ListActivity { private ArrayList<MyItem> items; public void onCreate(Bundle savedInstanceState) { /* code which creates instances of MyItem and inserts them on the *list* variable */ MyArrayAdapter adapter = new MyArrayAdapter(this, R.layout.my_item, list); setListAdapater(adapter); setContentView(R.layout.items_list); } public onListItemClick(ListView l, View v, int position, long id){ //handles the click on […]

Android – 自定义ArrayAdapter类中的notifyDataSetChange

我有一个名为InteractiveArrayAdapter的自定义ArrayAdapter,它将button和button侦听器添加到列表视图中的每个项目。 在适配器内部有一个getView方法来创build一个视图充气机。 这里面是我的button创build和buttonListener创build的地方。 当button被点击时,我删除与该button相关联的ArrayList中的元素。 问题是,我不知道如何从这个OnClick方法中调用notifyDataSetChange,或另一种方式来通知适配器,listView需要更新。 自定义适配器 public class InteractiveArrayAdapter extends ArrayAdapter<String> { private final List<String> list; private final Activity context; private ListView listV; public InteractiveArrayAdapter(Activity context, List<String> list) { super(context, R.layout.rowbuttonlayout, list); this.context = context; this.list = list; } static class ViewHolder { protected TextView text; protected Button button; } @Override public View getView(int position, […]

ArrayAdapter使用Kotlin android

对不起我的英语不好。 我学习kotlin,现在我需要写ArrayAdapter,但我有一些错误,当尝试做这个convertView = vi.inflate(resource, null) kotlin说我Val cannot be reassigned 。 在网站kotline我转换java类到kotlin类,并尝试做像这个网站。 为什么我有错,我该如何解决这个问题? open class MyAdapter(context: Context, resource: Int, list: ArrayList<MyItems>) : ArrayAdapter<MyItems>(context, resource, list) { var resource: Int var list: ArrayList<MyItems> var vi: LayoutInflater init { this.resource = resource this.list = list this.vi = context.getSystemService(Context.LAYOUT_INFLATER_SERVICE) as LayoutInflater } override fun getView(position: Int, convertView: View?, parent: […]

重写Android ArrayAdapter

我想做一个非常简单的事情。 我有我的应用程序中的dynamic添加文本的列表视图。 但是,在某一点之后,我想改变列表视图中文本的颜色。 所以,我做了一个定义我的自定义列表项的XML,并对ArrayAdapter进行了子类化。 但是,每当我在我的自定义ArrayAdapter上调用add()方法时,一个项目就会被添加到列表视图中,但文本不会被放入它。 这是我的XML:` <TextView xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/list_content" android:textSize="8pt" android:gravity="center" android:layout_margin="4dip" android:layout_width="fill_parent" android:layout_height="wrap_content" android:textColor="#FF00FF00"/> 和我的ArrayAdapter子类: private class customAdapter extends ArrayAdapter<String> { public View v; public customAdapter(Context context){ super(context, R.layout.gamelistitem); } @Override public View getView(int pos, View convertView, ViewGroup parent){ this.v = convertView; if(v==null) { LayoutInflater vi = (LayoutInflater)getSystemService(Context.LAYOUT_INFLATER_SERVICE); v=vi.inflate(R.layout.gamelistitem, null); } if(timeLeft!=0) { TextView […]

如何刷新Android列表适配器,因此它显示新增项目

我正在做一个项目。 它只是显示一个任务列表,并添加新的任务。 我有3个CLASSES。 一个用于添加,一个用于查看,另一个用于保存所有信息(或者我认为)。 我已经在我的列表中有2个任务,并且显示正确。 问题是,当我添加一个新的任务,它不会显示在视图中。 我尝试了许多可能的解决scheme: 只需将项目添加到列表 创build一个新的列表,包含旧的和重build适配器的项目; 使用notifyDataSetChanged(); 与add()命令一起; 等等 这是我的代码,有点乱,但我希望你能弄明白。 AndroidListAdapterActivity类: public class AndroidListAdapterActivity extends ListActivity { /** Called when the activity is first created. */ Button b1; Lista o; ArrayAdapter aa; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); b1=(Button)findViewById(R.id.add); Log.w("POC", "PA OVO SE ZOVE SVAKI PUT"); o=new Lista(); o.lis.add("S1"); o.lis.add("S2"); […]

如何禁用我的ListView中的项目

我有一个ListView设置在我的AlertDialog在Android中,我试图添加分隔符作为标题标题,以帮助组织信息。 我想出了如何显示他们…但他们仍然可以由用户select,这是不好的。 有没有一种方法来禁用可在Android ListViewselect的项目? 我发现一个方法isEnabled(int position)来查看一个项目是否启用,但没有看到它是否被禁用。

为什么食谱宣传覆盖getItemViewType和getViewTypeCount,当它似乎没有必要?

我一直在通过Commonsware的Android编程教程和教程5中的额外功劳2,面临的挑战是使用多个布局来显示ListView中的行,这取决于对象的“types名称”(餐厅的“types”属性,这是一个string)。 因此,它build议在自定义ArrayAdapter中重写getItemViewType和getViewTypeCount 。 此外, Android文档和其他在线食谱或博客文章也提示相同。 在这种情况下,遵循这个配方,并重写这两个方法工作正常,但基于检查该餐厅“types”属性的值导致冗余逻辑。 例如(注意,这个适配器是一个内部类, restaurants是一个声明为外部Activity成员的Restaurant对象的ArrayList): class RestaurantsAdapter extends ArrayAdapter<Restaurant> { private static final int ROW_TYPE_DELIVERY = 0; private static final int ROW_TYPE_TAKE_OUT = 1; private static final int ROW_TYPE_SIT_DOWN = 2; RestaurantsAdapter() { super(LunchListActivity.this, android.R.layout.simple_list_item_1, restaurants); } public int getViewTypeCount() { return 3; } public int getItemViewType(int position) { String type = […]

ArrayAdapter的默认布局

我目前正在使用一个arrays适配器。 我在网上遇到的所有示例都使用arrays适配器的单独布局。 我想知道它是否有一个默认的布局。 我的代码是这样的 ArrayAdapter<String> adapt = new ArrayAdapter<String>(this,,item); 第二个参数是什么,以便我不指定资源布局,并使用其默认值?

在ListView中禁用项目焦点

我怎样才能禁用ListView一个项目的焦点,当我点击它,所以没有重点点击?

构造函数ArrayAdapter <string>是未定义的

我有一个方法initializeViews ,它遇到一个ArrayAdapter constructor undefined错误在其最后一行。 该方法位于扩展MainFragment 。 然后MainFragment被附加到一个Activity 。 我们不能在ArrayAdapter<string>构造函数中给出Fragment的上下文吗? 我是Android新手。 请纠正我 提前致谢。 private void initializeViews(RelativeLayout contentLayout) { leaguesListView = ( ListView ) contentLayout.findViewById ( R.id.leaguesListView ); progressLinear = (LinearLayout) contentLayout.findViewById ( R.id.progressLeagues ); values= new String[] { "RedBullRacing", "McLaren", "Lotus", "ForceIndia", "HRT", "Ferrari" }; adapter= new ArrayAdapter<String>(F1Fragment.this, android.R.layout.simple_list_item_1, android.R.id.text1, values); }