android.R.Layout。*如何在方法上接收此参数?

时间:2018-04-10 13:51:03

标签: android android-layout android-adapter

我有一个接收上下文和List的方法,所以它可以改变适配器的背景颜色并返回它,但现在我的情况是它必须是单行的android.R.Layout.simple_list_item_1android.R.Layout.simple_list_item_2或它可以是任何其他类型的android.R.Layout.*

如何在方法上定义参数?

这是我目前的方法

private ArrayAdapter<String> AdapterColor(List<String> list, Context context)
{
    ArrayAdapter<String> adapter = new ArrayAdapter<String>(context, android.R.layout.simple_list_item_1, list)
    {
        @Override
        public View getView(int position, View converView, ViewGroup parent)
        {
            View view = super.getView(position, converView, parent);
            if(position %2 == 1)
            {
                view.setBackgroundColor(Color.parseColor("#FFD6D6D6"));
            }
            else
            {
                view.setBackgroundColor(Color.parseColor("#FFFAFAFA"));
            }
            return view;
        }
    };
    return adapter;
}

我确实尝试过布局作为参数但不起作用,我确实搜索了它但找不到相关信息。

修改

我想做这样的事情:

private ArrayAdapter<String> AdapterColor(List<String> list, Context context, Layout layoutParam)
{
    ArrayAdapter<String> adapter = new ArrayAdapter<String>(context, layoutParam, list)
    {
        @Override
        public View getView(int position, View converView, ViewGroup parent)
        {
            View view = super.getView(position, converView, parent);
            if(position %2 == 1)
            {
                view.setBackgroundColor(Color.parseColor("#FFD6D6D6"));
            }
            else
            {
                view.setBackgroundColor(Color.parseColor("#FFFAFAFA"));
            }
            return view;
        }
    };
    return adapter;
}

希望从外部接收LayoutParam方法,使代码更容易。

2 个答案:

答案 0 :(得分:0)

而不是:

View view = super.getView(position, converView, parent);

使用&#34; converView&#34; (或转换View,但你更喜欢:D)。像这样:

converView.setBackgroundColor(Color.parseColor("#FFD6D6D6"));

答案 1 :(得分:0)

pyinstaller --onefile mypython35script.py

请参阅https://developer.android.com/reference/android/support/annotation/LayoutRes.html了解详情