【问题标题】:How to make the first item of a Custom ListView to be selected as default如何使自定义 ListView 的第一项被选为默认值
【发布时间】:2018-09-21 10:35:30
【问题描述】:

如何将自定义 ListView 的第一项设为默认选择

lvModifierSet.setAdapter(modifierSetListAdapter);
AdapterView.OnItemClickListener onItemClickListener = new AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> adapterView, View view, int position, long l) {
                ModifierSet modifierSet = modifierSets.get(position);
                Toast.makeText(context, modifierSet.getModifier_set_name(), Toast.LENGTH_SHORT).show();
            }
        };
lvModifierSet.setOnItemClickListener(onItemClickListener);

这是我的自定义适配器

public class ModifierSetListAdapter extends ArrayAdapter<ModifierSet> {

    private Context context;
    private int resourceLayout;
    private List<ModifierSet> modifierSets;

    public ModifierSetListAdapter(Context context, int resource, List<ModifierSet> modifierSets) {
        super(context, resource, modifierSets);
        this.context = context;
        resourceLayout = resource;
        this.modifierSets = modifierSets;
    }

    @NonNull
    @Override
    public View getView(final int position, @Nullable View convertView, @NonNull ViewGroup parent) {

        View view = convertView;
        if (view == null) {
            LayoutInflater vi = LayoutInflater.from(context);
            view = vi.inflate(resourceLayout, null);
        }

        ModifierSet modifierSet = modifierSets.get(position);

        TextView tvModifierName = view.findViewById(R.id.modifier_set_tv_modifier_name);
        tvModifierName.setText(modifierSet.getModifier_set_name());

        return view;

    }

}

我在下面尝试 link

【问题讨论】:

标签: android listview


【解决方案1】:

试试这个

检查适配器中的位置 0

设置默认文本颜色

tvModifierName.setTextColor(Your Color) ;

//现在检查位置0

 if (position ==0){
    tvModifierName.setTextColor(Your Color) ;
    or set backGround
    tvModifierName.setBackgroundColor(Your Color) ;
    }

【讨论】:

    【解决方案2】:

    你的列表视图有选择器吗?如果没有,您需要创建一个选择器 xml:

    <?xml version="1.0" encoding="utf-8" ?>
    <selector xmlns:android="http://schemas.android.com/apk/res/android">
        <item 
            android:state_selected="true"
            android:drawable="@color/pressed_color"/>
        <item
            android:drawable="@color/default_color" />
    </selector>
    

    然后将其作为背景添加到您的列表中:

    <ListView>
      ...  
        android:background="@drawable/selector"
      ...
    </ListView>
    

    那么它应该与您看到的链接中的方法一起使用

    【讨论】:

      猜你喜欢
      • 2012-03-23
      • 1970-01-01
      • 2015-08-29
      • 2015-11-04
      • 1970-01-01
      • 1970-01-01
      • 2014-05-26
      • 1970-01-01
      • 2013-04-23
      相关资源
      最近更新 更多