以编程方式更改Android Switch小部件高度

时间:2015-01-06 11:55:40

标签: android android-switch

我正在使用以下代码以编程方式创建一个开关:

Switch s = new Switch(mActivity);

s.setText(text);
s.setBackground(selectorDrawable);       
s.setTypeface(mFont);
s.setTextSize(mEntriesTextSize);
s.setTextSize(8);
s.setTag(command);
s.setVisibility(View.VISIBLE);
s.setPadding(mEntriesSidesPadding,
    mEntriesUpDownPadding, mEntriesSidesPadding,
    mEntriesUpDownPadding);
s.setChecked(on);

// attempted to change height here...

s.setOnCheckedChangeListener(mOnCheckedListener);

mLayout.addView(s, mLayoutParams);
returnView = s;

如何更改屏幕上实际开关的高度(不是文字高度,ON / OFF开关本身的高度)

我试过

setMaxHeight(), setMinHeight(), setHeight()

但似乎没有任何效果。

2 个答案:

答案 0 :(得分:0)

您可以使用:

s.getLayoutParams().height = YOUR_HEIGHT;

(YOUR_HEIGHT是所需的像素高度)

如果您在布局布局之后设置了高度,请务必致电:

s.requestLayout()

答案 1 :(得分:0)

最有效的解决方案是:

            s.setSwitchMinWidth(x);

其中x是您想要的值。我花了一些时间在所述相似的功能中找到它。