一个按钮奇怪地对快速点击做出反应(点击只应该改变按钮内的文本):它会调整大小,变大,即使文本非常小。
如果我点击它并保持半秒钟然后移开手指,则 minWidth 属性受到尊重。
我可以通过“长按”恢复原始大小,并通过“短按”放大。每次都有效。
我无法在 4.0+ 上重现此问题(但我没有尝试过),并且似乎总是在 2.3.X 设备上发生(我在 HTC Desire S 和 2.3.5 和 Galaxy S2 上尝试过 2.3.6 )。
以下是与此按钮相关的 xml 代码:
<Button
android:id="@+id/header_left_button"
android:layout_width="wrap_content"
android:layout_height="@dimen/very_small_item_height"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
android:layout_marginLeft="10dip"
android:background="@drawable/btn_nav_background"
android:minWidth="70dip"
android:paddingLeft="5dip"
android:paddingRight="5dip"
android:textColor="#FFFFFF"
android:textSize="9sp"
android:visibility="gone" />
和 OnClick 监听器:
mBtnTextHeaderLeft.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
mBtnTextHeaderLeft.setText("OK");
});
有什么想法吗 ?
编辑 :
选择器是这样定义的:
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/btn_map_bottom_pressed" android:state_pressed="true"/>
<item android:drawable="@drawable/btn_map_bottom_normal" android:state_enabled="true"/>
</selector>
编辑2: 以下是按钮的两种状态的屏幕截图(对不起,我没有足够的声誉来直接添加图像......):
正常大小(当按钮尚未被点击时,或者如果我点击“缓慢”它)
错误大小(当“快速”点击按钮时)