gpt4 book ai didi

java - 使用SimpleCursorAdapter.ViewBinder改变View的颜色

转载 作者:行者123 更新时间:2023-12-01 04:52:04 25 4
gpt4 key购买 nike

我有一个 ListView ,想要根据从 SQLite 数据库检索到的某些条件来更改 View (@+id/panel) 颜色。

<?xml version="1.0" encoding="UTF-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >

<LinearLayout
android:layout_width="10dp"
android:layout_height="fill_parent"
android:layout_weight="0.01"
android:orientation="vertical" >

<View
android:id="@+id/panel"
android:layout_width="10dip"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:background="#ffa500"
android:layout_marginRight="4dip"
/>
</LinearLayout>
<LinearLayout
android:layout_width="0dip"
android:layout_height="fill_parent"
android:layout_weight="2.86"
android:orientation="vertical" >

<TextView
android:id="@+id/textViewB"
android:layout_width="wrap_content"
android:layout_height="wrap_content"

android:text="" />
</LinearLayout>
</LinearLayout>

我正在使用 SimpleCursorAdapter.ViewBinder 来执行此操作:

SimpleCursorAdapter.ViewBinder binder = new SimpleCursorAdapter.ViewBinder() {

@Override
public boolean setViewValue(View view, Cursor cursor, int columnIndex){

if (view.getId() == R.id.panel)
{
String name = cursor.getString(1);

if (name.equals("Ravi")) {
view.setBackgroundColor(Color.RED);
} else {
view.setBackgroundColor(Color.BLUE);
}
return true;
}
return false;
}

listView.setAdapter(dataAdapter);
dataAdapter.setViewBinder(binder);

这段代码仍然不起作用。该代码永远不会通过条件。我可以更改 TextView 对象 (@+id/textViewB) 的字体颜色,但从未成功更改 View 颜色。

感谢您的回答。

最佳答案

一个SimpleCursorAdapter

An easy adapter to map columns from a cursor to TextViews or ImageViews defined in an XML file.

我不确定您尝试将数据库中的值绑定(bind)到哪个View,但我认为它仅适用于TextView对象(@+id/textViewB) 因为 TextView 是您可以使用此接口(interface)的 View 类型之一。

尝试使用 SimpleAdapter.ViewBinder反而?否则,使用 getView() 可能会给您带来好的结果。

关于java - 使用SimpleCursorAdapter.ViewBinder改变View的颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14797265/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com