我刚刚开始使用android并编写我的第一个应用程序,但是我现在有两天困难了:我有一个带有xml文件形状的按钮作为背景。每个按钮执行一个将有文本。带图像的那个是我的头疼 - 我使用了形状背景并将图像放在TextView:drawableTop中,但它的大小与其他按钮不同,我需要它们的大小完全相同。这是代码:
<LinearLayout
<Button
android:id="@+id/ButtonCoffee"
style="@style/buttonText"
android:layout_height="wrap_content"
android:drawableTop="@drawable/coffeepng"
android:focusable="false"
android:onClick="loadBreak"
android:textSize="@dimen/activity_vertical_margin" />
我用于所有按钮的样式:
<style name="buttonText" parent="@android:style/TextAppearance">
<item name="android:textColor">#FFFFFF</item>
<item name="android:textSize">35sp</item>
<item name="android:typeface">sans</item>
<item name="android:textStyle">bold</item>
<item name="android:background">@drawable/btn_background_green</item>
<item name="android:layout_width">match_parent</item>
<item name="android:layout_marginTop"> 5dp </item>
<item name="android:layout_marginBottom">5dp </item>
</style>
与此同时,我想在开发此应用时提出更多问题:
使用形状作为按钮背景是否更有效,或者使用png图像是否合适?在不同的设备上达到相同的尺寸是否重要?
是否可以进行多项活动,或者我应该尝试在单项活动中绘制不同的按钮组(取决于用户的风格选择)?
如何将图像从一个活动传递到另一个活动?
答案 0 :(得分:1)
在名为drawable
的{{1}}文件夹中创建一个形状,如下所示......
button_shape.xml
然后使用此形状设置为按钮的背景,如下所示......
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle" >
<solid android:color="#ef4444" />
<stroke
android:width="1dp"
android:color="#992f2f" />
<corners android:radius="16dp" />
</shape>