gpt4 book ai didi

android - CheckedTextView 未被检查

转载 作者:行者123 更新时间:2023-11-30 02:57:50 25 4
gpt4 key购买 nike

我有一个附加到数组适配器的简单 ListView 。我的列表是多选复选框的列表。

开始时,我只是将 android CheckedTextView 用于我的列表 TextView :

public static class MyAdapter extends ArrayAdapter<String> {
private List<String> items;

public MyAdapter(Context context, List<String> items) {
super(context, android.R.layout.simple_list_item_multiple_choice, items);

this.items = items;
}
...

当我单击一行复选框被选中时,这非常有效。

我的 View 变得更加复杂,我需要为列表中的每个项目添加一个进度条:

list_item.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >

<ProgressBar
android:id="@+id/progressBar"
style="?android:attr/progressBarStyleSmall"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:indeterminate="true"
android:visibility="visible" />

<CheckedTextView
android:id="@+id/checkedTextView"
android:layout_width="fill_parent"
android:layout_height="?android:attr/listPreferredItemHeightSmall"
android:checkMark="?android:attr/listChoiceIndicatorMultiple"
android:gravity="center_vertical"
android:paddingLeft="6dip"
android:paddingRight="6dip"
android:text="Rivers"
android:textAppearance="?android:attr/textAppearanceMedium" />

</LinearLayout>

所以我的阵列适配器现在看起来像:

public static class MyAdapter extends ArrayAdapter<String> {
private List<String> items;

public MyAdapter(Context context, List<String> items) {
super(context, R.layout.list_item, R.id.checkedTextView, items);

this.items = items;
}

通过使用我自己的布局“R.layout.list_item”的简单更改,当我单击一行时,它的复选框不会被选中。当我使用 androids“android.R.layout.simple_list_item_multiple_choice”布局时,在这之前发生了什么魔法?

即某个地方 android 处理了点击事件并选中了复选框,但我所做的只是更改布局,现在它不起作用。我想我可以通过使用那里的布局免费获得一些东西。我能否以不同的方式设置我的布局以仍然获得免费的点击检查?

最佳答案

神奇之处在于 CheckedTextView 实现了 Checkable。如果您希望自己的列表项 View 能够处理所有点击/检查事件,您需要您的 View 来实现它。

在此处找到带有示例的答案: http://tokudu.com/post/50023900640/android-checkable-linear-layout

关于android - CheckedTextView 未被检查,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23000598/

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