Articles of listview

getItemAtPosition()如何从ListView中的选定项获取可读数据

我有一个从Android ContactManager示例中获得的联系人列表视图。 此列表显示正常,但我无法弄清楚如何从所选项目中获取信息,如“姓名”和“电话号码”。 我可以获得所选位置,但mContactList.getItemAtPosition(position)的结果是一个ContentResolver $ CursorWrapperInner,这对我来说没有任何意义。 我不能从中得到正面或反面。 任何人都知道我如何从listView中的选定项目获取名称/ ID /电话号码? 这是我的代码。 @Override public void onCreate(Bundle savedInstanceState) { Log.v(TAG, “Activity State: onCreate()”); super.onCreate(savedInstanceState); setContentView(R.layout.choose_contact); // Obtain handles to UI objects mAddAccountButton = (Button) findViewById(R.id.addContactButton); mContactList = (ListView) findViewById(R.id.contactList); mShowInvisibleControl = (CheckBox) findViewById(R.id.showInvisible); // Initialize class properties mShowInvisible = false; mShowInvisibleControl.setChecked(mShowInvisible); mContactList.setOnItemClickListener(new OnItemClickListener() { public void onItemClick(AdapterView […]

Android:IllegalStateException – 什么时候抛出?

在我的应用程序中,有时会抛出以下exception: 07-28 14:49:25.398: ERROR/AndroidRuntime(8097): java.lang.IllegalStateException: The content of the adapter has changed but ListView did not receive a notification. Make sure the content of your adapter is not modified from a background thread, but only from the UI thread. [in ListView(2131099717, class android.widget.ListView) with Adapter(class ch.uzh.csg.games4blue.gamebase.view.UserView$UserAdapter)] 07-28 14:49:25.398: ERROR/AndroidRuntime(8097): at android.widget.ListView.layoutChildren(ListView.java:1432) 07-28 14:49:25.398: ERROR/AndroidRuntime(8097): at […]

Scroll上的Android ListView背景颜色更改 – colorCacheHint无法解决问题

所以我通过适配器使用自定义列表视图,在我的Nexus 7上,一切看起来都很棒,但在我的HTC Incredible 2上,我遇到了我的背景颜色发生变化的问题。 这是我的cacheColorHint设置的XML文件。 我也试过#AA00000。 有什么建议么? 我也尝试通过setCacheColorHint在活动中设置它,但没有任何工作。

Android:在Listadapter中清除listview

可能重复: 如何在android中清除我的listview 在android中,我使用了listadapter,简单的适配器并传递了一个数组,我想清除listview内容? 它不是清除,而是将记录附加到我的列表视图中。

Android:ListView闪烁效果。 关于如何摆脱这个的任何提示?

出于某种原因,每当我滚动浏览项目列表时,listview中的背景就会消失并重新出现,从而产生一种我不想要的“闪烁”效果。 我已尝试过以下建议: 如何在Android中使ListView透明化? 但由于某种原因它不起作用。 有什么建议么?

ListView:textIsSelectable和onItemClick

上下文 我有一个列表视图,其中行基本上由两个TextView( 标题和内容 )组成。 第二个TextView可以有一个长文本,所以我设置maxLines=”6″ 。 当用户点击该行时,我会删除maxLines以显示全文。 public void onItemClick(AdapterView adapterView, View view, int position, long id) { TextView content = (TextView ) view.findViewById(R.id.content); int limit = getResources().getInteger(R.integer.default_max_lines); if (content.getMaxLines() > limit) { content.setMaxLines(limit); } else { content.setMaxLines(Integer.MAX_VALUE); } } 问题 以上代码效果很好。 我希望能够选择我的第二个TextView( 内容 ),所以我设置android:textIsSelectable=”true” (也尝试以编程方式设置)。 但我不能展开/折叠我的TextView,因为不再调用onItemClick 这是因为textIsSelectable捕获所有点击事件…来自Android doc: 当您调用此方法来设置textIsSelectable的值时,它会将可聚焦标记,focusableInTouchMode,clickable和longClickable设置为相同的值。 这些标志对应于android:focusable,android:focusableInTouchMode,android:clickable和android:longClickable属性。 要将任何这些标志恢复到先前设置的状态,请调用以下一种或多种方法:setFocusable(),setFocusableInTouchMode(),setClickable()或setLongClickable()。 我试图在setTextIsSelectable(true)之后将这些标志设置为false,但我没有设法让它工作。 那么,任何想法如何同时使用textIsSelectable和onItemClick ? […]

Android ICS ListView刷新问题

我的Android应用程序上有一个ListView,我动态地更改了它的数据。 我使用onFilterComplete()方法来更改ListView的内容。 预冰淇淋Sandwhich下面的代码工作正常: if(adapter != null) { adapter.notifyDataSetInvalidated(); lview3.invalidateViews(); adapter.getFilter().filter(aa1.getItem(item), new Filter.FilterListener() { public void onFilterComplete(int count) { adapter.notifyDataSetChanged(); if(lview3.getCount() == 0){ lview3.setVisibility(View.GONE); } else{ lview3.setVisibility(View.VISIBLE); } }}); 但是在Ice Cream Sandwhich上,当我使用filter时,屏幕没有正确刷新,如果filter返回的数量小于之前的ListView,那么旧的列表数据似乎仍然在后台可见,按照这个屏幕截图: 从屏幕截图中你可以看到ListView中第一个条目的位置,这是应该可见的所有内容,你可以看到前面的结果在下面仍然可见,这些只是可见它们不起作用,因为它们不能被点击,就像屏幕没有正确刷新一样。 当我选择主页按钮以通过主屏幕离开应用程序并返回所有内容时,应按照以下屏幕截图显示: 还有什么我必须实现以正确刷新Ice Cream Sandwhich上的ListView吗? 有没有其他人遇到过类似的问题? 我在ICS之前做得很好。

使用Firebase填充小部件

我的应用程序使用Firebase数据库,项目在RecyclerView中正确显示,但我想在Widget中显示它们。 由于小部件不是活动,因此使用Firebase和ListView会遇到各种问题。 有没有办法从Firebase填充Widget?

Android:listView Adapter应该是ViewModel类的一部分吗?

我正在研究Android应用程序并试图遵循MVVM设计模式。 我有一个listView,问题是适配器是否应该是ViewModel类的一部分? 使用MVVM设计模式构建此结构的最佳方法是什么?

用于android的ListViewfilter

我有一个适配器,我使用ad.getFilter().filter(s); 用于过滤listView。 如果我在EditText中写一个单词,它的效果很好。 如果在单词后写一个空格字符,它不起作用(结果没有行)。 我想用名称和surmane做一个filter。 我想在edittext中插入”Mario Rossi”并得到一个结果..我希望我解释一下。 非常感谢。 private TextWatcher filterTextWatcher = new TextWatcher() { public void afterTextChanged(Editable s) { } public void beforeTextChanged(CharSequence s, int start, int count, int after) { } public void onTextChanged(CharSequence s, int start, int before, int count) { ad.getFilter().filter(s); } };