白色文本和黑色背景使用xml代码android

时间:2015-11-15 12:57:17

标签: android html xml graphics calculator

如何使用白色文本和黑色背景有效填充背景。当我使用此代码在按钮字段中的xml中填充背景时

        android:background="#c6010101"

按钮代码在这里

     <Button
        style="?android:attr/buttonStyleSmall"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:text="@string/OpenBraces"
        android:id="@+id/buttonOB"
        android:layout_above="@+id/button1"
        android:layout_toRightOf="@+id/button1"
        android:layout_toEndOf="@+id/button1"
        android:background="#c6010101"
        android:textColor="#FFFFFCFC" />

完整代码就在这里。

    <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:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MainActivity">


<EditText
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:id="@+id/editText"
    android:inputType="textCapCharacters"
    android:digits="0123456789=+-*^/{}.xX"
    android:layout_alignParentTop="true"
    android:layout_alignParentLeft="true"
    android:layout_alignParentStart="true" />

<!-- Footer Ends -->

<LinearLayout
    android:id="@+id/linearLayout1"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:weightSum="4"
    android:layout_above="@+id/linearLayout2"
    android:layout_alignParentLeft="true"
    android:layout_alignParentStart="true"
    android:orientation="horizontal" >

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:text="@string/One"
        android:id="@+id/button1"
        android:layout_above="@+id/button4"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:background="#64010001"
        android:textColor="#FFFFFCFC"  />

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:text="@string/Two"
        android:id="@+id/button2"
        android:layout_alignTop="@+id/button1"
        android:layout_toRightOf="@+id/button1"
        android:layout_toEndOf="@+id/button1"
        android:background="#64010001"
        android:textColor="#FFFFFCFC" />

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:text="@string/Three"
        android:id="@+id/button3"
        android:layout_alignBottom="@+id/button2"
        android:layout_toRightOf="@+id/button2"
        android:layout_toEndOf="@+id/button2"
        android:background="#64010001"
        android:textColor="#FFFFFCFC" />

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:text="@string/Plus"
        android:id="@+id/buttonPlus"
        android:layout_above="@+id/button6"
        android:layout_toRightOf="@+id/button3"
        android:layout_toEndOf="@+id/button3"
        android:backgroundTint="#c6010101"
        android:textColor="#FFFFFCFC" />
</LinearLayout>

<LinearLayout
    android:id="@+id/linearLayout2"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:weightSum="4"
    android:layout_above="@+id/linearLayout3"
    android:orientation="horizontal">
    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:text="@string/Four"
        android:id="@+id/button4"
        android:layout_above="@+id/button7"
        android:layout_toLeftOf="@+id/button8"
        android:layout_toStartOf="@+id/button8"
        android:background="#64010001"
        android:textColor="#FFFFFCFC" />

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:text="@string/Five"
        android:id="@+id/button5"
        android:layout_above="@+id/button8"
        android:layout_alignLeft="@+id/button2"
        android:layout_alignStart="@+id/button2"
        android:background="#64010001"
        android:textColor="#FFFFFCFC" />

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:text="@string/Six"
        android:id="@+id/button6"
        android:layout_alignTop="@+id/button5"
        android:layout_toRightOf="@+id/button5"
        android:layout_toEndOf="@+id/button5"
        android:background="#64010001"
        android:textColor="#FFFFFCFC"
        android:singleLine="true" />

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:text="@string/Minus"
        android:id="@+id/buttonMinus"
        android:layout_above="@+id/button9"
        android:layout_toRightOf="@+id/button6"
        android:layout_toEndOf="@+id/button6"
        android:backgroundTint="#c6010101"
        android:textColor="#FFFFFCFC" />

</LinearLayout>
<LinearLayout
    android:id="@+id/linearLayout3"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"

    android:layout_above="@+id/linearLayout4"
    android:orientation="horizontal">
    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:text="@string/Seven"
        android:id="@+id/button7"
        android:layout_above="@+id/button0"
        android:layout_toLeftOf="@+id/button8"
        android:layout_toStartOf="@+id/button8"
        android:background="#64010001"
        android:textColor="#FFFFFCFC" />

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:text="@string/Eight"
        android:id="@+id/button8"
        android:layout_alignBottom="@+id/button7"
        android:layout_alignLeft="@+id/button5"
        android:layout_alignStart="@+id/button5"
        android:background="#64010001"
        android:textColor="#FFFFFCFC" />

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:text="@string/Nine"
        android:id="@+id/button9"
        android:layout_alignTop="@+id/button8"
        android:layout_toRightOf="@+id/button8"
        android:layout_toEndOf="@+id/button8"
        android:background="#64010001"
        android:textColor="#FFFFFCFC" />
    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:text="@string/Multiply"
        android:id="@+id/buttonMul"
        android:layout_alignBottom="@+id/button9"
        android:layout_toRightOf="@+id/button9"
        android:layout_toEndOf="@+id/button9"
        android:backgroundTint="#c6010101"
        android:textColor="#FFFFFCFC" />
</LinearLayout>

<LinearLayout
    android:id="@+id/linearLayout4"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:weightSum="4"
    android:orientation="horizontal">

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:text="@string/Dot"
        android:id="@+id/buttonDot"
        android:background="#64010001"
        android:textColor="#FFFFFCFC"
        android:layout_below="@+id/button7"
        android:layout_toLeftOf="@+id/button8"
        android:layout_toStartOf="@+id/button8" />

    <Button

        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:text="@string/Zero"
        android:id="@+id/button0"
        android:layout_alignParentBottom="true"
        android:layout_toRightOf="@+id/button7"
        android:layout_alignRight="@+id/button8"
        android:layout_alignEnd="@+id/button8"
        android:background="#64010001"
        android:textColor="#FFFFFCFC" />
    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:text="@string/Equal"
        android:id="@+id/buttonEqual"
        android:backgroundTint="#c6010101"
        android:textColor="#FFFFFCFC"
        android:layout_alignParentBottom="true"
        android:layout_toRightOf="@+id/button0"
        android:layout_toEndOf="@+id/button0" />

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:text="@string/Divide"
        android:id="@+id/buttonDiv"
        android:layout_alignParentBottom="true"
        android:layout_toRightOf="@+id/button9"
        android:layout_toEndOf="@+id/button9"
        android:backgroundTint="#c6010101"
        android:textColor="#FFFFFCFC" />


</LinearLayout>

<LinearLayout
    android:id="@+id/linearLayout0"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_above="@+id/linearLayout1"
    android:orientation="horizontal"
    android:weightSum="4">

    <Button
        style="?android:attr/buttonStyleSmall"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/VariableX"
        android:layout_weight="1"
        android:id="@+id/buttonVarX"
        android:layout_above="@+id/button1"
        android:layout_toLeftOf="@+id/button2"
        android:layout_toStartOf="@+id/button2"
        android:backgroundTint="#c6010101"
        android:textColor="#FFFFFCFC" />


    <Button
        style="?android:attr/buttonStyleSmall"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:text="@string/OpenBraces"
        android:id="@+id/buttonOB"
        android:layout_above="@+id/button1"
        android:layout_toRightOf="@+id/button1"
        android:layout_toEndOf="@+id/button1"
        android:background="#c6010101"
        android:textColor="#FFFFFCFC" />

    <Button
        style="?android:attr/buttonStyleSmall"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:text="@string/CloseBraces"
        android:id="@+id/buttonCB"
        android:layout_above="@+id/button2"
        android:layout_toRightOf="@+id/button2"
        android:layout_alignRight="@+id/button3"
        android:layout_alignEnd="@+id/button3"
        android:backgroundTint="#c6010101"
        android:textColor="#FFFFFCFC" />

    <Button
        style="?android:attr/buttonStyleSmall"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:text="@string/Power"
        android:id="@+id/buttonPow"
        android:backgroundTint="#c6010101"
        android:textColor="#FFFFFCFC"
        android:layout_above="@+id/buttonPlus"
        android:layout_alignParentRight="true"
        android:layout_alignParentEnd="true" />


</LinearLayout>

<ImageButton
    android:layout_width="wrap_content"
    android:layout_height="40dp"
    android:id="@+id/buttonBS"
    android:src="@android:drawable/ic_media_rew"
    android:background="#c6010101"
    android:contentDescription="@string/Back"
    android:layout_above="@+id/linearLayout0"
    android:layout_alignRight="@+id/webView"
    android:layout_alignEnd="@+id/webView" />

<WebView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:id="@+id/webView"
    android:layout_alignParentLeft="true"
    android:layout_alignParentStart="true"
    android:layout_below="@+id/editText"
    android:layout_alignRight="@+id/linearLayout1"
    android:layout_alignEnd="@+id/linearLayout1"
    android:layout_above="@+id/buttonBS" />

<Button
    style="?android:attr/buttonStyleSmall"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/buttonSolution"
    android:id="@+id/buttonSol"
    android:layout_above="@+id/linearLayout0"
    android:layout_alignParentLeft="true"
    android:layout_alignParentStart="true" />

然后它android:background不仅填充按钮区域,还填充按钮的外部区域。在这个区域按钮点击不起作用,因为它不是按钮的一部分,但它看起来像是按钮的一部分,你可以在这张图片中看到

Button outer area fill with color

此图片中显示按钮的空白区域。我希望用白色文字和黑色按钮颜色显示它。

outer area not fill

我也尝试使用android:backgroundTint =“#c6010101”它在Android中显示我想要但它在手机上不起作用。

1 个答案:

答案 0 :(得分:0)

可以通过给出形状来解决它。我们可以使用select

来做到这一点
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/button_1_selected"
android:state_pressed="true"/>
<!-- focused state -->
<item android:drawable="@drawable/button_1_focused"
android:state_focused="true"/>
<!-- default state -->
<item android:drawable="@drawable/button_1_normal"/>
</selector>

编写此代码,并将扩展名.xml(btn_black.xml)保存在E:\ My-Application \ app \ src \ main \ res \ drawable

的可绘制文件夹中

并在您的按钮xml代码中添加此代码

还可以在xml中编写focus,normal和selected的代码,并使用在选择器代码中给出的名称保存在同一文件夹(drawable)中。在此代码文件名中将是

button_1_focused.xml
button_1_normal.xml
button_1_selected.xml

button_1_normal.xml

<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="@color/button_1_normal_background"/>
<corners android:radius="10dip"/>
 </shape>

similer for other。 另请参阅此方http://www.codeproject.com/Articles/1006843/An-Efficient-Way-to-Make-Button-Color-Change-on-An