相关疑难解决方法(0)

如何从多选列表视图中获取所选项目

我正在使用数组适配器,并且这是添加字符串s的数组列表,列表是多选,如何获取列表项的值被点击?

my_contacts_list.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE);
ArrayAdapter<String> adapter=new ArrayAdapter<String>(this, android.R.layout.simple_list_item_multiple_choice,conts_list);
  my_contacts_list.setAdapter(adapter);
Run Code Online (Sandbox Code Playgroud)

我试图这样做,

SparseBooleanArray positions = my_contacts_list.getCheckedItemPositions();
  int size=positions.size();
  int i=0;
  while(i <= size){
   conts_list.get(positions.get(i));
   i++;
  }
Run Code Online (Sandbox Code Playgroud)

但是position.get(i)是一个数组列表,那么如何检索所选项呢?

android android-listview

47
推荐指数
3
解决办法
8万
查看次数

如何在Android中的ListView中突出显示行?

我需要在ListView选中的一行中突出显示一行(向用户显示他选择的内容),因此,这不是将要选择的那一行,而是他之前选择的那一行.

我已经有了以下位置:

ListView.setSelection(position);
Run Code Online (Sandbox Code Playgroud)

现在我想要的是选择这个特定的行并突出显示它.

onCreate()活动中包含以下内容的代码ListView:

public class CountryView extends Activity
{
    protected static final String LOG_TAG = null;
    /** Called when the activity is first created. */
    String[] lv_arr = {};

    ListAdapter adapter;
    TextView t;
    private ListView lvUsers;
    private ArrayList<Coun> mListUsers;
    String responce=null;
    public int d;
    int selectedListItem = -1;


    @Override
    public void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.country);

        Intent data =getIntent();

        mListUsers = getCoun();
        lvUsers = (ListView) findViewById(R.id.counlistView);


        lvUsers.setAdapter(new ListAdapter(this, R.id.counlistView, mListUsers)); 


        selectedListItem=data.getExtras().getInt("PositionInList");

       lvUsers.setChoiceMode(ListView.CHOICE_MODE_SINGLE);



        lvUsers.setOnItemClickListener(new …
Run Code Online (Sandbox Code Playgroud)

android android-listview

35
推荐指数
4
解决办法
6万
查看次数

如何在Android ListView中设置所选项目的样式?

我是一个Android新手,试图学习UI方面的东西,它正在努力.这就是我现在所拥有的:

breeds_listing.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content" android:layout_height="wrap_content">
    <ListView android:id="@+id/breedsListView"
        android:layout_width="fill_parent" android:layout_height="fill_parent"
        android:dividerHeight="0px" android:divider="#00000000"></ListView>
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

breeds_listing_item.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content" android:layout_height="wrap_content"
        android:background="@drawable/list_item_background"
    android:orientation="horizontal" >
    <TextView android:id="@+id/allbreeds_single_item"
        android:layout_width="fill_parent" android:layout_height="fill_parent"
        android:gravity="center_horizontal"></TextView>
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

list_item_background.xml

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
    <solid android:color="#043402" />
    <stroke android:width="3dp" color="#ffff8080" />
    <corners android:radius="8dp" />
    <padding android:left="10dp" android:top="10dp" android:right="10dp"
        android:bottom="10dp" />
</shape>
Run Code Online (Sandbox Code Playgroud)

我正在努力弄清楚的是我如何设计所选项目的样式?目前,所选项目具有可怕的橙色背景,在圆形绿色矩形下,呈现橙色轮廓效果.我确信我没有按照最佳做法做事,所以任何建议或改进都将不胜感激.

非常感谢,D.

android listview coding-style selected

14
推荐指数
1
解决办法
3万
查看次数

具有多个选择和自定义适配器的Android ListView

我有一个ListView自定义适配器.在ListView允许多个选择,但不知何故,当一个项目被选中它不承认.

我已经使适配器项扩展了Checkable,但仍然getCheckedItemPositions()返回了一系列的falses.

我想有一些基本的我做错了,但到目前为止我还无法找到多个选择ListView的示例,其中适配器不是ArrayAdapter,使用多个选择的默认布局.

任何帮助将非常感激.

代码如下:

主要课程:

listView = (ListView) findViewById(R.id.cardlist);

tca = new TextCardAdapter(mInflater);
listView.setAdapter(tca);
Run Code Online (Sandbox Code Playgroud)

适配器:

public class TextCardAdapter extends BaseAdapter {
private int count = 0;
private List<CheckableCard> cardList = new ArrayList<CheckableCard>();
private LayoutInflater mInflater;

public TextCardAdapter(LayoutInflater inflater) {
    this.mInflater = inflater;
}

@Override
public int getCount() {
    return count;
}

@Override
public Object getItem(int position) {
    return cardList.get(position);
}

@Override
public long getItemId(int position) {
    return position;
}

@Override
public View getView(int …
Run Code Online (Sandbox Code Playgroud)

android listview multiple-select listadapter

12
推荐指数
1
解决办法
3万
查看次数

可检查的相对布局作为多选列表中的项目

我有Android应用程序列表视图,选择模式设置为多选模式.

此列表中的项目定义为相对布局.

如何在选择项目时更改项目的背景?

项目xml:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    ...
    android:checkable="true"
    android:background="@drawable/my_item_background"
Run Code Online (Sandbox Code Playgroud)

我的项目背景xml:

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android" >
    <item android:drawable="@color/mycolor1" android:state_selected="true"/>
    <item android:drawable="@color/mycolor2" android:state_checked="true"/>
    <item android:drawable="@android:color/black"/>
</selector>
Run Code Online (Sandbox Code Playgroud)

物品的背景总是黑色的.

android listview

4
推荐指数
1
解决办法
3931
查看次数