0

在 iOS 应用程序上,我看到了这样一个按钮:

在此处输入图像描述

我想在Android中做同样的事情,我怎么能做到这一点?我尝试的是以下代码:

<Button
    android:id="@+id/widget41"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_marginLeft="5dp"
    android:layout_marginRight="5dp"
    android:text="Email1 testmail@gmail.com"
    android:textStyle="bold" />

看起来像这样:

在此处输入图像描述

嗯,只是一个普通的(丑陋的)按钮。我不知道,我怎么能像在 iOS 中那样设计它。任何建议或链接将不胜感激!

4

5 回答 5

4

最好的解决方案是创建您自己的自定义视图,其行为类似于 iOS 对应视图(尽管,正如其他用户所提到的,Android 确实有自己的设计指南,并且您看到的视图是为此设计的 iOS 实现平台)。

在此处输入图像描述

如果您查看上面的 iOS 图像(您的副本,其中一些部分突出显示),我已将其拆分为多个部分。

您可以使用ViewGroup像 a 这样的 AndroidLinearLayout来创建整体图像,并给LinearLayouta 边框或背景(例如可以是圆角矩形的位图图像(有关如何使其适合多个屏幕的示例,请参见Android Nine Patch ) .

  1. 首先,对于邮件图标,您需要一个LeftAligned ImageView 具有适当尺寸的图标。
  2. 接下来我们有一个Bold TextView包含文本“Email1”。
  3. 紧随其后的是另一个TextView蓝色, 一旦文本达到它可以使用的最大宽度,它就会使用该elipsize属性(如 Android XML 布局中定义的那样)在最后创建 。"..."android:ellipsize="end"在 XML 中使用)
  4. 最后,我们有了一个指示图像,它的ImageView 大小也可以适当地调整。

您也可以使用 来实现这一点RelativeLayout,这将允许您RightAlign使用指示图像、LeftAlign邮件图标,并允许文本填充它可以获取的空间。

此处为背景使用九个补丁的示例

于 2013-01-07T16:17:19.297 回答
1

那是UITableView在 iOS 中(就像ListView在 android 中一样)。这取决于您执行的列表项设计。Android中没有这样Button的控件。

于 2013-01-07T15:32:33.667 回答
0

您应该设计自己的按钮,使其看起来像 iOS 按钮。

Android 有自己的设计指南:

http://developer.android.com/design/patterns/pure-android.html

于 2013-01-07T15:39:53.153 回答
0

好吧,正如其他人已经明确提到的那样,Android 中没有像这样的默认按钮,并且供您参考,iOS 中也没有。一切都与设计有关。一切皆有可能,最终一切都取决于你愿意为实现它走多远。

下面是一个简单的代码,它将接近您的设计。

 <TextView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:layout_centerVertical="true"
        android:layout_margin="5dp"
        android:background="@drawable/text_background"
        android:drawableLeft="@drawable/envelope"
        android:drawablePadding="10dp"
        android:drawableRight="@drawable/right_arrow"
        android:ellipsize="end"
        android:gravity="center_vertical"
        android:text="@string/email" />

也可以有其他方式,比如整个视图可以是一个 ViewGroup,可以是 aLinearLayout或 a RelativeLayout,并且其中可能有多个TextViews 和ImageViews。

于 2013-01-07T15:56:35.797 回答
-1

是创建风格化 android 按钮的教程。您可以圆角并更改背景颜色,使其看起来像 ios 中的按钮。

是一个类似的问题。

希望这可以帮助。

于 2013-01-07T15:39:01.280 回答