Android Eclipse - Nottons在点击/触摸时发生变化

时间:2015-04-20 20:52:29

标签: android android-layout android-button

我正在构建一个计算器应用程序,但我的按钮有问题。

按钮文字似乎在单击/触摸时在按钮表面上“跳”了一下。我附上了一个前后截图来显示。任何想法为什么会这样?我已将我的XML文件附加在底部。如果需要,我会附上我的MainActivity.java,如果我看不到任何帮助。非常感谢提前。

GUI pre-touch

GUI post-touch

  <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#8CD11D"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.example.funkycalc.MainActivtiy\" >

<TableLayout
    android:id="@+id/tableLayout1"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:layout_centerHorizontal="true" >

    <TableRow
        android:id="@+id/tableRow1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" >

        <Button
            android:id="@+id/clearb"
            style="?android:attr/buttonStyle"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="CLR"
            android:textStyle="bold" />

        <Button
            android:id="@+id/deleteb"
            style="?android:attr/buttonStyle"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="DEL"
            android:textStyle="bold" />
    </TableRow>

    <TableRow
        android:id="@+id/tableRow2"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" >

        <Button
            android:id="@+id/oneb"
            style="?android:attr/buttonStyle"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="1"
            android:textStyle="bold" />

        <Button
            android:id="@+id/twob"
            style="?android:attr/buttonStyle"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="2"
            android:textStyle="bold" />

        <Button
            android:id="@+id/threeb"
            style="?android:attr/buttonStyle"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="3"
            android:textStyle="bold" />

        <Button
            android:id="@+id/subtractb"
            style="?android:attr/buttonStyle"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="-"
            android:textStyle="bold" />
    </TableRow>

    <TableRow
        android:id="@+id/tableRow3"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" >

        <Button
            android:id="@+id/fourb"
            style="?android:attr/buttonStyle"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="4"
            android:textStyle="bold" />

        <Button
            android:id="@+id/fiveb"
            style="?android:attr/buttonStyle"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="5"
            android:textStyle="bold" />

        <Button
            android:id="@+id/sixb"
            style="?android:attr/buttonStyle"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="6"
            android:textStyle="bold" />

        <Button
            android:id="@+id/addb"
            style="?android:attr/buttonStyle"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="+"
            android:textStyle="bold" />
    </TableRow>

    <TableRow
        android:id="@+id/tableRow4"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" >

        <Button
            android:id="@+id/sevenb"
            style="?android:attr/buttonStyle"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="7"
            android:textStyle="bold" />

        <Button
            android:id="@+id/eightb"
            style="?android:attr/buttonStyle"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="8"
            android:textStyle="bold" />

        <Button
            android:id="@+id/nineb"
            style="?android:attr/buttonStyle"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="9"
            android:textStyle="bold" />

        <Button
            android:id="@+id/divideb"
            style="?android:attr/buttonStyle"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="/"
            android:textStyle="bold" />
    </TableRow>

    <TableRow
        android:id="@+id/tableRow5"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" >

        <Button
            android:id="@+id/zerob"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="0"
            android:textStyle="bold" />

        <Button
            android:id="@+id/decimalb"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight=".5"
            android:text="."
            android:textStyle="bold" />

        <Button
            android:id="@+id/multiplyb"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight=".5"
            android:text="x"
            android:textStyle="bold" />
    </TableRow>

    <TableRow
        android:id="@+id/tableRow6"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" >

        <Button
            android:id="@+id/equalsb"
            style="?android:attr/buttonStyleSmall"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="="
            android:textStyle="bold" />
    </TableRow>
</TableLayout>

<TextView
    android:id="@+id/result"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentTop="true"
    android:layout_centerHorizontal="true"
    android:layout_marginTop="14dp"

    android:textSize="55sp" />

2 个答案:

答案 0 :(得分:1)

如果你在布局中使用tablelayout而不是在i中使用Relative,那么这可能是更好的选择。表格布局将使事情以比相对更好的方式组织。可能会有所帮助

OR

在每个按钮中尝试:

android:gravity="center"

答案 1 :(得分:0)

您的ninepatch图片可能有问题

this tutorial中的以下图片可以解释您的问题的原因 ninepatch image setup

&#34;填充区域&#34;是写入文本的区域。确保您的按下状态图像与正常状态图像具有相同的填充区域。