onClick触发时在Button内移动文本

时间:2014-03-28 12:39:46

标签: android

我有TableLayoutTableRow个孩子,Button个包含一些信息。

View.onClickListener被触发后,Button内的文字重力会从中心变为顶部。 (不在代码中,只在视觉上)。此外,点击一个Button会在返回包含整个Button的{​​{1}}后更改每个Fragment的严重性。

这是我的XML

View

这是我的Java

<TableLayout
    android:id="@+id/buttonGrid"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignWithParentIfMissing="false"
    android:layout_below="@+id/topbotLine"
    android:divider="@color/line_whieish" >

    <TableRow
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_weight="1" >

        <Button
            android:id="@+id/wwwButton"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_span="1"
            android:layout_weight="1"
            android:background="@drawable/filter_button_click"
            android:gravity="center"
            android:text="@string/www"
            android:textColor="@color/white"
            android:textSize="@dimen/details_normals_font_size" />

        <View
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:background="@color/line_whieish" />

编辑2:

添加选择器:

    Button wwwBtn = (Button) rootView.findViewById(R.id.wwwButton);
    if (annotationDetail.getData().getWww() != null) {
        wwwBtn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Intent wwwIntent = new Intent(Intent.ACTION_VIEW, Uri.parse(annotationDetail
                        .getData().getWww()));
                startActivity(wwwIntent);
            }
        });
    } else {
        wwwBtn.setClickable(false);
        wwwBtn.setTextColor(getResources().getColor(R.color.green_app_click));
    }

1 个答案:

答案 0 :(得分:0)

wwwBtn.setClickable(false);部分将更改已应用的主题。检查这是不是你的问题。