Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 如何正确地为特定列表元素着色_Android_Android Listview - Fatal编程技术网

Android 如何正确地为特定列表元素着色

Android 如何正确地为特定列表元素着色,android,android-listview,Android,Android Listview,我有不同的列表元素,想给特定的列表元素上色。我的想法是将listview元素的文本保存到一个数据库中,该数据库应该是红色的。然后我想将数据库的文本与listview元素的文本进行比较,当这些文本匹配时,它们应该是红色的 这是原始列表视图: 然后我想用文本“Presetting”为listview上色。数据库内容正确: 但结果如下: 以下是我的listView适配器代码: @Override public View getChildView ( final int groupPosition

我有不同的列表元素,想给特定的列表元素上色。我的想法是将listview元素的文本保存到一个数据库中,该数据库应该是红色的。然后我想将数据库的文本与listview元素的文本进行比较,当这些文本匹配时,它们应该是红色的

这是原始列表视图:

然后我想用文本“Presetting”为listview上色。数据库内容正确:

但结果如下:

以下是我的listView适配器代码:

@Override
public View getChildView ( final int groupPosition, final int childPosition,boolean isLastChild, View convertView, ViewGroup parent ) {

    Datenbankhelper datenbankHelper = null;

    datenbankHelper = datenbankHelper.getDatenBankHelper ( context_global );

    String[] liste_aller_gesten = datenbankHelper.get_liste_aller_gesten( );

    List< String > liste_aller_gesten_datenbank = Arrays.asList( liste_aller_gesten );



    groupPosition_global = groupPosition;
    childPosition_global = childPosition;

    Log.d ( "childPosition_global", "childPosition_global " + childPosition_global + "|" + groupPosition_global );

    // final String childText = ( String ) getChild ( groupPosition, childPosition );
    final String childText = getChild ( groupPosition, childPosition ).toString ();

    if ( convertView == null ) {
        LayoutInflater infalInflater = ( LayoutInflater ) context_global.getSystemService ( Context.LAYOUT_INFLATER_SERVICE );
        convertView = infalInflater.inflate ( R.layout.list_item, null );
    }

    final TextView txtListChild = ( TextView ) convertView.findViewById ( R.id.lblListItem );

    txtListChild.setText( childText );


    Log.d( "childtext123_0", "childtext123_0 " + childText + "|" + txtListChild.getText().toString());

    for(int i=0; i < liste_aller_gesten_datenbank.size(); i++){
        Log.d("childtext123_1", "childtext123_1 " + liste_aller_gesten_datenbank.get( i ));     // Presenting
    }


    if(liste_aller_gesten_datenbank.contains( "Anwendung starten|" + childText )/* && txtListChild.getText().toString().equals( childText )*/){
        Log.d( "in liste_aller_gesten", "in liste_aller_gesten " + groupPosition_global + "|" + childPosition_global );

        convertView.setBackgroundColor( Color.RED );
    }
@覆盖
公共视图getChildView(最终整数组位置、最终整数子位置、布尔isLastChild、视图转换视图、视图组父级){
Datenbankhelper Datenbankhelper=null;
datenbankHelper=datenbankHelper.getDatenBankHelper(上下文\全局);
String[]liste\u aller\u gesten=datenbankHelper.get\u liste\u aller\u gesten();
Listliste\u aller\u gesten\u datenbank=Arrays.asList(liste\u aller\u gesten);
groupPosition\u global=groupPosition;
childPosition\u global=childPosition;
Log.d(“childPosition_global”、“childPosition_global”+childPosition_global+“|”+groupPosition_global);
//最终字符串childText=(字符串)getChild(groupPosition,childPosition);
最后一个字符串childText=getChild(groupPosition,childPosition).toString();
if(convertView==null){
LayoutInflater infalInflater=(LayoutInflater)context\u global.getSystemService(context.LAYOUT\u INFLATER\u SERVICE);
convertView=infalInflater.flate(R.layout.list_项,空);
}
最终文本视图txtListChild=(文本视图)convertView.findViewById(R.id.lblListItem);
setText(childText);
Log.d(“childtext123_0”,“childtext123_0”+childText+“|”+txtListChild.getText().toString());
对于(int i=0;i
非常感谢