Articles of android arrayadapter

Android微调器显示对象引用而不是string

好的,所以我有一个与我的微调问题。 它正在填充从Web服务拉的数据。 我的问题是,当不单击微调框而不是显示微调框中的第一个项目的string,而是显示它的对象引用。 我已经看过相关的问题,但仍然看不到什么即时通讯丢失,是否就像丢失一个toString引用一样简单? 这是填充微调框的代码 private void buildDrinkDropDown() { List<NameValuePair> apiParams = new ArrayList<NameValuePair>(1); apiParams.add(new BasicNameValuePair("call", "drinkList")); bgt = new BackGroundTask(MAP_API_URL, "GET", apiParams); try { JSONArray drinks = bgt.execute().get(); for (int i = 0; i < drinks.length(); i++) { JSONObject d = drinks.getJSONObject(i); String id = d.getString(TAG_ID_DRINK); String createdAt = d.getString(TAG_CREATED_AT); String updatedAt = d.getString(TAG_UPDATED_AT); […]

刷新ArrayAdapter onResume

我正在使用Fragments创build联系人列表应用程序,其中一个frag是联系人列表中的名称列表,另一个是其余细节。 这是显示名称列表的类 public class MyListFragment extends ListFragment { private ContactStorage contactStorage = new ContactStorage(); public final static String TAG = "FRAGMENTS"; private MainActivity parent; ArrayAdapter<String> adapter; ArrayList<String> entries = new ArrayList<String>(); String array[]; public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View v = inflater.inflate(R.layout.list_layout, null); parent = (MainActivity) getActivity(); entries = contactStorage.getContactListNames(); adapter […]

回收自定义数组适配器中的视图:它究竟是如何处理的?

我有一个不清楚的问题关于自定义数组适配器的getView方法中的视图回收。 我明白元素被重复使用,但是我怎么知道在if语句的第一部分中究竟要实现什么,在第二部分呢? 现在我有以下的代码。 由于在声明的第二部分中放弃了代码,导致前9个元素的列表,而这些元素被重复数次而不是所有元素,所以我来到这个问题。 我真的不知道究竟是什么造成了这个… @Override public View getView(int position, View convertView, ViewGroup parent) { View row = convertView; if (row == null) { LayoutInflater inflater = ((Activity) context).getLayoutInflater(); row = inflater.inflate(layoutResourceId, parent, false); title = getItem(position).getTitle(); size = calculateFileSize(position); txtTitle = (TextView) row.findViewById(R.id.txtTitle); tvFileSize = (TextView) row.findViewById(R.id.tvFileSize); txtTitle.setText(title); tvFileSize.setText(size); } else { title = […]

从应用程序屏幕和最近使用的应用程序列表中打开应用程序有什么区别? (机器人

任何人都可以告诉我,从应用程序屏幕打开一个应用程序,并打开它最近使用的应用程序列表,当你长按主页buttonpopup之间的区别是什么? 我甚至不知道最近使用过的列表存在,直到一个朋友设法从那里启动我的应用程序。 他尝试了两次,得到了同样的力量,但是当他从应用程序屏幕上启动它时,它就打开了。 错误日志告诉我在我的ListView的ArrayAdaptor的getCount方法中发生了nullPointerExceptionexception。 无论如何,我只是想知道是否有一个差异,我需要知道和适应我的代码来处理?

在ArrayAdapter中重写getDropDownView时的样式问题

重写ArrayAdapter getDropDownView方法时遇到一个奇怪的行为。 我需要重写此方法,以显示正确的string值从我的自定义对象。 多数民众赞成我的arrays适配器是这样的: ArrayAdapter<NoteType> adapter = new ArrayAdapter<NoteType>(this, android.R.layout.simple_spinner_item, lstNoteTypes){ @Override public View getView(int position, View convertView, ViewGroup parent) { TextView lbl = (TextView) super.getView(position, convertView, parent); lbl.setText(getItem(position).getName()); return lbl; } @Override public View getDropDownView(int position, View convertView, ViewGroup parent) { TextView lbl = (TextView) super.getView(position, convertView, parent); lbl.setText(getItem(position).getName()); return lbl; } }; adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); […]

使用arrayadapter过滤ListView

我试图用arrayadapter过滤listview。 arraydapapter参数是一个String [] []。 问题是,任何事情都会发生。 我必须重写Filter接口? 在这种情况下,有人可以提供一些提示? 我试图过滤的数组的每一个位置就像 galleryValues[0][0] -> "tiulo" [0][1] -> "desc" [0][2] -> "etc" 我尝试过滤它: lstContinente = (ListView)findViewById(R.id.list); lstContinente.setTextFilterEnabled(true); adapter = new PortaitArrayAdapter(cx,galleryValues); lstContinente.setAdapter(adapter); ed_busqueda.addTextChangedListener(new TextWatcher() { public void afterTextChanged(Editable s) {} public void beforeTextChanged(CharSequence s, int start, int count, int after) { // TODO Auto-generated method stub } public void onTextChanged(CharSequence […]

listview不用notifydatasetchanged()调用更新

这是我的代码 listview =(ListView) findViewById(R.id.lv1); ArrayList<SClass> Monday = new ArrayList<SClass>(); SClass s1=new SClass(); s1.sName="samp"; s1.salary=1000; Monday.add(s1); temp=Monday; adapter = new CustomAdap(this, temp); listview.setAdapter(adapter); 上面的代码工作正常。但是当我改变我的代码到这个 listview =(ListView) findViewById(R.id.lv1); adapter = new CustomAdap(this, temp); SClass s1=new SClass(); s1.sName="samp"; s1.salary=1000; Monday.add(s1); temp=Monday; listview.setAdapter(adapter); adapter.notifyDataSetChanged(); Listview没有显示任何内容,问题是什么?

OnItemClickListener使用ArrayAdapter的ListView

我想有一个使用ArrayAdapter创build的ListView的OnItemClickListener 这是我用来创build它的代码: List<Comment> values = datasource.some_search("Wednesday","11"); ArrayAdapter<Comment> adapter = new ArrayAdapter<Comment>(this, android.R.layout.simple_list_item_1, values); setListAdapter(adapter); 我如何实现onItemClickListener? 谢谢! 编辑:我在我的ArrayAdapter和ListView中使用一个对象的string。 编辑2:更多代码: public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); datasource = new CommentsDataSource(this); datasource.open(); //check if database is populated if NOT, populate with txtToDb(); if (!datasource.isPopulated()) { // Database is not populated so copy it from assets here try […]

ArrayAdapter的getView()方法没有被调用

我对android开发很陌生。 我正在尝试构build带有标签(通过片段添加)的应用程序。 在其中的一个片段中,我试图显示一个列表。 这个列表已经使用ListAdapter填充,我已经从ArrayAdapter扩展,并且我重载了getView()方法。 这是我的片段 public class tabcontentActivity extends Fragment { public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { if (container == null) { return null; } View v = (LinearLayout) inflater.inflate(R.layout.tablayout, container, false); ListView lv = (ListView) v.findViewById(R.id.listview1); ListViewAdapter adapter = new ListViewAdapter(container.getContext(), android.R.layout.simple_list_item_1, R.id.textview1); adapter.notifyDataSetChanged(); lv.setAdapter(adapter); return v; } } 这就是我已经实现了ListAdapter public […]

Android的ListView加载更多的项目,当达到结束

我已经成功地实现了一个listView,其中每一行都是我创build的一个对象。 我有一个接口读取一些对象,并返回它们的数组,我传递给适配器的构造函数。 我想要做的是,由于列表可能很长,我的界面允许每次读取更多的项目(第0页,第1页…),所以我想,当用户到达列表的最后一行时,加载下一页并将其插入到listView中。 这样做的正确方法是什么? 我实际上希望“到达列表的末尾”触发一个callback,我可以请求更多的页面,并将其加载到列表中。 OT的主要问题,但我不介意使用baseAdapter,都将工作,我只是不知道什么是更好的任务。