AI开发实战7-列表显示框(Listview)的定制

Posted xjbclz

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了AI开发实战7-列表显示框(Listview)的定制相关的知识,希望对你有一定的参考价值。

6 列表显示框(Listview)的定制

     AppInventor2提供的列表显示框,用户可以设置是否在其上显示搜索框,但搜索框中显示的提示字符串为英文,可修改为中文。

    列表提示框的源码文件是ListView.java,修改的代码如下:

    //txtSearchBox.setHint("Searchlist...");

     txtSearchBox.setHint("搜索列表...");

    点击列表选择框时,也会显示列表提示框,列表选择框的源码文件是ListPicker.java,点击列表选择框,调用ListPickerActivity显示列表框,修改ListPickerActivity.java的代码如下:

    //txtSearchBox.setHint("Searchlist...");

    txtSearchBox.setHint("搜索列表...");

最终实现效果如下:

android系统还提供了其它形式的列表显示框,如下图所示:

在每个Item的最右边有个单选按钮,想要实现此种形式的单选按钮,也需要修改ListView.java的代码:

//标识是否使用具有单选按钮的列表显示框

private boolean singleChoice = true;

 

public void setAdapterData()

if(!singleChoice)

  //App Invetor2默认提供的列表显示框

     adapter = new ArrayAdapter<Spannable>(container.$context(),android.R.layout.simple_list_item_1,

       itemsToColoredText());

else

 

  //创建具有单选按钮的列表显示框,布局文件和上面不同

     adapter = new ArrayAdapter<Spannable>(container.$context(),android.R.layout.simple_list_item_single_choice,

     itemsToColoredText());

 

     //Android系统还支持在列表框中的多选,在此设置为单选模式     、、CHOICE_MODE_SINGLE = 1

     view.setChoiceMode(1);

   

   view.setAdapter(adapter);

   

   if (!singleChoice)

      adapterCopy = new ArrayAdapter<Spannable>(container.$context(),android.R.layout.simple_list_item_1);

    else

      adapterCopy = new ArrayAdapter<Spannable>(container.$context(),android.R.layout.simple_list_item_single_choice);

    

   

   for (int i = 0; i < adapter.getCount(); ++i)

     adapterCopy.insert(adapter.getItem(i), i);

   

 

最终的实现效果如下:

以上是关于AI开发实战7-列表显示框(Listview)的定制的主要内容,如果未能解决你的问题,请参考以下文章

AI开发实战9-Web浏览框(WebView)的定制2

AI开发实战5-文本输入框(TextBox)的定制2

AI开发实战4-文本输入框(TextBox)的定制1

C#实战:WinForm控件ListView快速上手

安卓开发 listview中给指定行文本框赋值的问题

如何使用 listview 显示用户列表