通过代码将样式应用于按钮

时间:2016-04-22 16:00:38

标签: android xml button styles

我正在编写一个应用程序,我必须在BD中显示每个项目的按钮,所以我创建了一个包含ScrollView的片段,并在Scroll中创建了一个LinearLayout。

我也为按钮创建了自己的风格(左侧有一个“+”图标):

<style name="myButtonStyle" parent="@android:style/Widget.Button">
    <item name="android:drawableLeft">@drawable/ic_add_24dp</item>
    <item name="android:layout_width">match_parent</item>
    <item name="android:layout_height">wrap_content</item>
    <item name="android:background">@android:color/transparent</item>
    />
</style>

所以在代码中我要做的是在onCreateView中创建以下按钮:

mV = inflater.inflate(R.layout.this_fragment,container,false);

    LinearLayout scroll = (LinearLayout) mV.findViewById(R.id.linearScrollView);//linearScrollView is my LinearLayout 

    for(int i = 0; i < list.size();i++)
    {
        Button mButton = new Button(mV.getContext(), null, R.style.myButtonStyle);
        mButton.setText(list.get(i).getName());
        mButton.setLayoutParams(new LinearLayout.LayoutParams(
                LinearLayout.LayoutParams.FILL_PARENT,
                LinearLayout.LayoutParams.WRAP_CONTENT));

        mButton.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v)
            {

            }
        });
        scroll.addView(mButton);
    }
    return mV;

因此,当我尝试在手机中测试这个时,我得到了所有元素,但样式似乎缺失了,我有一个元素只是文本,我没有看到图标。

但如果我使用我创建的样式添加片段视图按钮,它们看起来就像我想要的那样!

0 个答案:

没有答案