zoukankan      html  css  js  c++  java
  • Android 之 Shape (圆角输入框)

    1 简介

    本文主要介绍通过 shape 来设置 EditText 的圆角。
     

    2 shape 的设置

     

    shape_life_search.xml 放在 res/drawable 文件夹内

    <?xml version="1.0" encoding="utf-8"?>
    <shape xmlns:android="http://schemas.android.com/apk/res/android" >
        <!-- 角度 -->
        <corners android:radius="100dp"/>
        <!-- 填充色 -->
        <solid android:color="#ffffff"/>
        <!-- 描边 设置线宽及颜色 -->
        <stroke android:color="#cccacb"
            android:width="1dp"/>
    </shape>


     

    3 shape 的使用

     
    在 activity_main.xml 主布局中如此使用

    <LinearLayout 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:orientation="vertical"
        android:background="#f5f5f5"
        tools:ignore="HardcodedText,ContentDescription" >
        
        <!-- Head start -->
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="horizontal"
            android:padding="10dp"
            android:background="#ff5a54">
            <ImageView
                android:layout_width="wrap_content"
                android:layout_height="match_parent"
                android:src="@drawable/head_left" />
            <TextView
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:layout_weight="1"
                android:gravity="center"
                android:text="周边生活"
                android:textStyle="bold"
                android:textSize="20sp"
                android:textColor="@android:color/white"/>
            <ImageView
                android:layout_width="wrap_content"
                android:layout_height="match_parent"
                android:src="@drawable/head_right" />
        </LinearLayout>
        <!-- Head end   -->
        <!-- Search start-->
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="vertical" 
            android:layout_margin="10dp">
            <EditText
                android:id="@+id/search_edit"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:drawableLeft="@drawable/search_left"
                  android:background="@drawable/shape_life_search"
                  android:hint="请输入商户或地址"
                android:padding="10dp"
                android:textColorHint="#b7b7b7"
                android:textStyle="bold"/>
        </LinearLayout>
        <!-- Search end  -->
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="vertical" >
            <ImageView
                android:layout_width="match_parent"
                android:layout_height="match_parent" />
        </LinearLayout>
    </LinearLayout>


    4 用到的资源

     
    head_left.png

    head_right.png

    search_left.png

     
     

    5 隐藏标题栏

     
    package com.ui;
    import android.app.Activity;
    import android.os.Bundle;
    import android.view.Window;
    public class MainActivity extends Activity {
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            
            //隐藏应用程序标题栏    (能看到手机通知栏)
             requestWindowFeature(Window.FEATURE_NO_TITLE);                                                                             
            //设置全屏            (手机通知栏也被隐藏)
            //this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN);
            
            setContentView(R.layout.activity_main);
        }
    }

    6 结果预览

     
    注:在 eclipse 的 layout 布局预览功能中,圆角不是很明显,但是安装到模拟器后就正常显示了,具体原因未知。
     
    在 eclipse 中预览结果
     
    在模拟器中的结果
     






     注:转载请注明出处 :)   毕竟代码是一个一个敲出来的啊,O(∩_∩)O~


     
     
     
  • 相关阅读:
    03把IL编译成可执行文件
    02值类型
    报错:该字符串未被识别为有效的DateTime
    01使用ILDasm.exe将可执行文件反编译成IL代码
    MVC自定义路由02-实现IRouteConstraint限制控制器名
    MVC自定义路由01-为什么需要自定义路由
    报错:System.Data.Entity.Infrastructure.DbUpdateException 更新条目时出错
    输入网址背后发生的故事
    使用jquery加载部分视图02-使用$.ajax()
    使用jquery加载部分视图01-使用$.get()
  • 原文地址:https://www.cnblogs.com/pangblog/p/3341580.html
Copyright © 2011-2022 走看看