【问题标题】:How to achieve google calendar EditText look如何实现google日历EditText的外观
【发布时间】:2016-07-10 14:32:20
【问题描述】:

我想让我的 EditText 字段看起来像在 Google 日历应用中:

有没有人有一些 sn-p 可以以最低的成本获得这种外观?

【问题讨论】:

    标签: android android-appcompat android-styles


    【解决方案1】:

    我的一个项目中有一个相同的EditText

    <android.support.v7.widget.Toolbar
    
            android:id="@+id/toolbar"
            android:layout_width="match_parent"
            android:layout_height="120dp"
            android:background="@android:color/darker_gray"
            android:minHeight="?android:attr/actionBarSize"
            android:theme="@style/ToolbarTheme">
    
            <RelativeLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content">
    
                <EditText
                    android:id="@+id/toolbar_title_new"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:layout_alignParentBottom="true"
                    android:layout_alignParentStart="true"
                    android:background="@android:color/transparent"
                    android:hint="Enter title"
                    android:paddingBottom="16dp"
                    android:textAppearance="@style/TextAppearance.AppCompat.Subhead"
                    android:textColor="@android:color/white"
                    android:textColorHint="@android:color/white" />
    
            </RelativeLayout>
    
        </android.support.v7.widget.Toolbar>
    

    这是“添加位置”部分的xml 代码:

    <ImageView
                    android:layout_marginBottom="16dp"
                    android:layout_marginEnd="16dp"
                    android:layout_marginTop="16dp"
                    android:alpha="0.54"
                    android:src="@mipmap/ic_action_place_dark"
                    app:layout_column="0"
                    app:layout_columnSpan="1"
                    app:layout_gravity="fill|start"
                    app:layout_row="8" />
    
                <EditText
                    android:id="@+id/location_new"
                    android:layout_width="0dp"
                    android:layout_height="0dp"
                    android:layout_marginEnd="16dp"
                    android:background="@android:color/transparent"
                    android:gravity="start|center_vertical"
                    android:paddingBottom="16dp"
                    android:paddingTop="16dp"
                    android:textAppearance="@style/TextAppearance.AppCompat.Subhead"
                    app:layout_column="1"
                    app:layout_columnSpan="2"
                    app:layout_gravity="fill|start"
                    app:layout_row="8"
                    android:hint="Add Location"
                    />
    

    正如我在评论中提到的,关键点在于背景颜色、文本颜色和填充。

    这里的rowcolumn 和其他属性用于使用GridLayout。您可以使用RelativeLayout 实现相同的设计。

    【讨论】:

    • 非常感谢。您是否对以下字段(例如添加位置)有类似的 sn-p。我的意思是样式,而不是点击后的功能。我的大部分字段都是 EditText,但我想要那种外观。提前致谢
    • @RMK 实际上这段代码没有神奇的部分。重点是将背景颜色设置为透明,并更改文本颜色和提示颜色。此外,您应该更改默认填充。我更新了我的答案并包括添加位置部分。
    猜你喜欢
    • 2012-01-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-02-23
    相关资源
    最近更新 更多