精华内容
下载资源
问答
  • Android 常用UI组件

    千次阅读 2019-12-19 16:01:35
    文章目录布局管理器1. 线性布局 LinearLayout2. 相对布局 RelativeLayoutTextViewButton ...最常用属性 android:id android:layout_margin android:layout_width android:layout_padding android:layo...

    作者:Bright Xu

    布局管理器

    1. 线性布局 LinearLayout

    • 最常用属性

      android:idandroid:layout_margin
      android:layout_widthandroid:layout_padding
      android:layout_heightandroid:orientation
      android:background
    • android:id

      创建id

      android:id="@+id/ll_1"
      
    • 宽度和高度(android:layout_width android:layout_height)

      • match_parent

        android:layout_width="match_parent"
        android:layout_height="match_parent"
        

        匹配父控件,表示让当前控件的大小和父布局的大小一样,也就是由父布局来决定当前控件的大小

      • wrap_content

        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        

        表示让当前的控件大小能够刚好包含里面的内容,也就是由控件内容决定当前控件的大小

      • 固定宽度和高度

        android:layout_width="200dp"
        android:layout_height="200dp"
        
        • 单位通常使用dp,字体单位通常使用sp
    • android:orientation 布局方向

      • vertical 竖直方向

        android:orientation="vertical"
        
      • horizontal 水平方向

        android:orientation="horizontal"
        
      • 默认水平方向

    • android:background 背景颜色

      android:background="#ff0033"
      
    • android:layout_padding 内边距

      • android:paddingTop
      • android:paddingLeft
      • android:paddingBottom
      • android:paddingRight
    • android:layout_margin 外边距

      • android:layout_marginTop
      • android:layout_marginLeft
      • android:layout_marginBottom
      • android:layout_marginRight
    • android:layout_weight

      • 设置权重

        android:layout_weight="1"
        

        把剩余内容按权重平分

    • layout_gravity

      • 内部元素对齐方式
      • layout_gravity 是LinearLayout 子元素的特有属性。对于layout_gravity, 该属性用于设置控件相对于容器的对齐方式,可选项有:top、bottom、left、right、center_vertical、fill_vertical 、 center、fill等等。
      • 这些可选项中不是适用于每一种布局。在垂直线性布局中,android:gravity为bottom不起作用;而水平线性布局中,android:gravity为right不起作用。本属性是android:layout_gravity属性,与 android:gravity 属同。android:gravity是LinearLayout的特有属性。android:layout_gravity是LinearLayout 子元素的特有属性,不要混淆了。

    RGB网页颜色在线取色器

    2. 相对布局 RelativeLayout

    • 最常用属性

      android:layout_toLeftOfandroid:layout_toStartOf
      android:layout_toRightOfandroid:layout_toEndOf
      android:layout_alignBottomandroid:layout_below
      android:layout_alignParentBottom… …
    • 对齐

      • 默认靠左上角对齐

        下面是将控件与view_2控件的下边缘对齐

        android:layout_below="@id/view_2"
        
      • android:layout_alignParentBottom 靠父控件下边缘对齐

        android:layout_alignParentBottom="true"
        
      • android:layout_alignParentRight 靠父控件右边缘对齐

        android:layout_alignParentRight="true"
        

    TextView

    • 文字大小、颜色

      android:text="@string/tv_text1"
      android:textColor="#f00"
      android:textSize="24sp"
      
    • 显示不下时,使用…

      android:layout_width="100dp"
      android:maxLines="1"
      android:ellipsize="end"
      
    • 文字+icon

      android:drawableRight="@drawable/tuanzi04"
      

      在文字的右边放置了一个图片tuanzi04.png

    • 中划线

      // com.bright.helloworld.TextViewActivity.java
      package com.bright.helloworld;
      
      import androidx.appcompat.app.AppCompatActivity;
      
      import android.graphics.Paint;
      import android.os.Bundle;
      import android.widget.TextView;
      
      public class TextViewActivity extends AppCompatActivity {
      
          private TextView mTv4;
          @Override
          protected void onCreate(Bundle savedInstanceState) {
              super.onCreate(savedInstanceState);
              setContentView(R.layout.activity_text_view);
              mTv4 = findViewById(R.id.tv_4);
              mTv4.getPaint().setFlags(Paint.STRIKE_THRU_TEXT_FLAG);  // 中划线
              mTv4.getPaint().setAntiAlias(true);  // 去除锯齿
          }
      }
      
      
      <!-- layout/activity_text_view.xml -->
          <TextView
              android:id="@+id/tv_4"
              android:layout_width="wrap_content"
              android:layout_height="wrap_content"
              android:text="你好,世界!!!"
              android:textColor="#f00"
              android:textSize="24sp"
              android:layout_marginTop="10dp"/>
      
    • 下划线

      方式1:

      // com.bright.helloworld.TextViewActivity.java
      package com.bright.helloworld;
      
      import androidx.appcompat.app.AppCompatActivity;
      
      import android.graphics.Paint;
      import android.os.Bundle;
      import android.widget.TextView;
      
      public class TextViewActivity extends AppCompatActivity {
      
          private TextView mTv5;
          @Override
          protected void onCreate(Bundle savedInstanceState) {
              super.onCreate(savedInstanceState);
              setContentView(R.layout.activity_text_view);
              mTv5 = findViewById(R.id.tv_5);
              mTv5.getPaint().setFlags(Paint.UNDERLINE_TEXT_FLAG);  // 下划线
          }
      }
      

      方式2:

      // com.bright.helloworld.TextViewActivity.java
      package com.bright.helloworld;
      
      import androidx.appcompat.app.AppCompatActivity;
      
      import android.graphics.Paint;
      import android.os.Bundle;
      import android.widget.TextView;
      
      public class TextViewActivity extends AppCompatActivity {
      
          private TextView mTv6;
          @Override
          protected void onCreate(Bundle savedInstanceState) {
              super.onCreate(savedInstanceState);
              setContentView(R.layout.activity_text_view);
              mTv6 = findViewById(R.id.tv_6);
              mTv6.setText(Html.fromHtml("<u>你好,世界!!!</u>"));  // 下划线2
          }
      }
      
      <!-- layout/activity_text_view.xml -->
          <TextView
              android:id="@+id/tv_6"
              android:layout_width="wrap_content"
              android:layout_height="wrap_content"
              android:text=""
              android:textColor="#f00"
              android:textSize="24sp"
              android:layout_marginTop="10dp"/>
      
    • 跑马灯

      <!-- layout/activity_text_view.xml -->
          <TextView
              android:id="@+id/tv_7"
              android:layout_width="wrap_content"
              android:layout_height="wrap_content"
              android:text="你好,世界!!!你好,世界!!!你好,世界!!!你好,世界!!!你好,世界!!!你好,世界!!!你好,世界!!!你好,世界!!!"
              android:textColor="#f00"
              android:textSize="24sp"
              android:layout_marginTop="10dp"
              android:singleLine="true"
              android:ellipsize="marquee"
              android:marqueeRepeatLimit="marquee_forever"
              android:focusable="true"
              android:focusableInTouchMode="true"/>
      
      

    Button

    • 文字大小、颜色

      <!-- layout/activity_button.xml -->
      <Button
              android:id="@+id/btn_1"
              android:layout_width="match_parent"
              android:layout_height="wrap_content"
              android:text="按钮1"
              android:textSize="20sp"
              android:textColor="#eee"
              android:background="#999"/>
      
    • 自定义背景形状

    • 自定义按压效果

    • 点击事件

    展开全文
  • Android常用UI组件 - EditText

    千次阅读 2014-10-29 09:34:09
    EditText是接受用户输入信息的最重要Android UI组件,可以利用EditText.getText()获取它的文本内容。 实例:EditTextDemo 运行效果: 代码清单: 布局文件:main.xml <TableLayout xmlns:android=...
    EditText是接受用户输入信息的最重要Android UI组件,可以利用EditText.getText()获取它的文本内容。

    实例:EditTextDemo
    运行效果:

    代码清单:
    布局文件:main.xml
    <?xml version="1.0" encoding="utf-8"?>
    <TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:stretchColumns="1"
        >
        <TableRow>
            <TextView
                android:gravity="right"
                android:textStyle="bold"
                android:padding="3dip"
                android:text="用户名称:"
            />
            <EditText 
                android:id="@+id/username"
                android:padding="3dip"
                android:scrollHorizontally="true"
            />
        </TableRow>
        <TableRow>
            <TextView
                android:gravity="right"
                android:textStyle="bold"
                android:padding="3dip"
                android:text="用户密码:"
            />
    
            <EditText 
                android:id="@+id/password"
                android:padding="3dip"
                android:password="true"
            />
        </TableRow>
        <TableRow android:gravity="right">
            <Button
                android:id="@+id/cancel"
                android:text="取消" 
            />
            <Button
                android:id="@+id/login"
                android:text="登录" 
            />
        </TableRow>
    </TableLayout>
    

    Java源代码文件:MainActivity.java
    package com.rainsong.edittextdemo;
    
    import android.app.Activity;
    import android.os.Bundle;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.widget.Button;
    import android.widget.EditText;
    import android.widget.Toast;
    
    public class MainActivity extends Activity
    {
        Button btn_login;
    
        OnClickListener listener_login;
    
        /** Called when the activity is first created. */
        @Override
        public void onCreate(Bundle savedInstanceState)
        {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.main);
            
            listener_login = new OnClickListener() {
                public void onClick(View v) {
                    EditText username = (EditText) findViewById(R.id.username);
                    EditText password = (EditText) findViewById(R.id.password);
                    Toast.makeText(MainActivity.this, "用户名称:" + username.getText() 
                        + ", 用户密码:" + password.getText(),Toast.LENGTH_SHORT).show();
                }
            };
            
            btn_login = (Button)findViewById(R.id.login);
            btn_login.setOnClickListener(listener_login);
        }
    }
    

    API知识点
    android.widget.EditText
    public class
    EditText
    extends TextView

    Known Direct Subclasses
    AutoCompleteTextView, ExtractEditText, SearchEditText

    Known Indirect Subclasses
    MultiAutoCompleteTextView

    Class Overview
    EditText is a thin veneer over TextView that configures itself to be editable.

    Public Constructors
    EditText(Context context)
    EditText(Context context, AttributeSet attrs)
    EditText(Context context, AttributeSet attrs, int defStyleAttr)
    EditText(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes)

    Editable getText()
    Return the text the TextView is displaying.


    展开全文
  • Android常用UI组件 - Button

    千次阅读 2014-10-21 09:55:03
    按钮(Button)是Android当中一个常用UI组件,很小但是在开发中最常用到。一般通过与监听器结合使用,从而触发一些特定事件。Button继承了TextView。它的功能就是提供一个按钮,这个按钮可以供用户点击,当用户对...
    按钮(Button)是Android当中一个常用的UI组件,很小但是在开发中最常用到。一般通过与监听器结合使用,从而触发一些特定事件。Button继承了TextView。它的功能就是提供一个按钮,这个按钮可以供用户点击,当用户对按钮进行操作的时候,触发相应事件,如点击,触摸。一般对于一个按钮而言,用的最多的就是点击事件,Button间接继承自View,而Android UI中的所有事件,都是定义在View中的。
    

    实例:ButtonDemo
    运行效果:



    代码清单:
    布局文件:main.xml
    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:orientation="vertical"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        >
        <Button android:id="@+id/button1"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content" android:text="Button1" />
        <Button android:id="@+id/button2"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content" android:text="Button2" />
    </LinearLayout>
    

    Java源代码文件:ActivityButton.java
    package com.rainsong.buttondemo;
    
    import android.app.Activity;
    import android.os.Bundle;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.widget.Button;
    import android.widget.Toast;
    
    public class ActivityButton extends Activity
    {
        Button btn1;
        Button btn2;
        
        OnClickListener listener1;
        OnClickListener listener2;
    
        /** Called when the activity is first created. */
        @Override
        public void onCreate(Bundle savedInstanceState)
        {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.main);
    
            listener1 = new OnClickListener() {
                public void onClick(View v) {
                    Toast.makeText(ActivityButton.this, "Button1 clicked",Toast.LENGTH_SHORT).show();
                }
            };
            listener2 = new OnClickListener() {
                public void onClick(View v) {
                    Toast.makeText(ActivityButton.this, "Button2 clicked",Toast.LENGTH_SHORT).show();
                }
            };
    
            btn1 = (Button)findViewById(R.id.button1);
            btn1.setOnClickListener(listener1);
    
            btn2 = (Button)findViewById(R.id.button2);
            btn2.setOnClickListener(listener2);
        }
    }
    

    API知识点
    Activity

    public class
    Activity
    extends ContextThemeWrapper
    implements ComponentCallbacks2 KeyEvent.Callback LayoutInflater.Factory2 View.OnCreateContextMenuListener Window.Callback

    View     findViewById(int id)
    Finds a view that was identified by the id attribute from the XML that was processed in onCreate(Bundle).

    void     setContentView(int layoutResID)
    Set the activity content from a layout resource.

    View
    public class
    View
    extends Object
    implements Drawable.Callback KeyEvent.Callback AccessibilityEventSource

    void     setOnClickListener(View.OnClickListener l)
    Register a callback to be invoked when this view is clicked.

    Button
    public class
    Button
    extends TextView

    View.OnClickListener
    public static interface
    View.OnClickListener

    abstract void    onClick(View v)
    Called when a view has been clicked.

    Toast
    public class
    Toast
    extends Object

    Constants
    int        LENGTH_LONG        Showthe view or text notification for a long period of time.
    int        LENGTH_SHORT        Showthe view or text notification for a short period of time.

    static Toast
    makeText(Context context, int resId, int duration)
    Make a standard toast that just contains a text view with the text from a resource.

    static Toast
    makeText(Context context, CharSequence text, int duration)
    Make a standard toast that just contains a text view.
     
    void
    show()
    Show the view for the specified duration.
    展开全文
  • Android常用UI组件 - TextView

    千次阅读 2014-10-25 18:07:23
    TextView是Android里面用的最多的UI组件,一般使用在需要显示一些信息的时候,其不能输入,只能初始设定或者在程序中修改。 实例:TextViewDemo 运行效果: 代码清单: 布局文件:main.xml ...
    TextView是Android里面用的最多的UI组件,一般使用在需要显示一些信息的时候,其不能输入,只能初始设定或者在程序中修改。

    实例:TextViewDemo
    运行效果:

    代码清单:
    布局文件:main.xml
    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:orientation="vertical"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        >
    <TextView
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="这里是TextView,你可以在这里显示一些文本信息。"
        />
    </LinearLayout>
    
    Java源代码文件:MainActivity.java
    package com.rainsong.textviewdemo;
    
    import android.app.Activity;
    import android.os.Bundle;
    
    public class MainActivity extends Activity
    {
        /** Called when the activity is first created. */
        @Override
        public void onCreate(Bundle savedInstanceState)
        {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.main);
        }
    }
    


    API知识点
    Activity
    public class
    Activity
    extends ContextThemeWrapper
    implements ComponentCallbacks2 KeyEvent.Callback LayoutInflater.Factory2 View.OnCreateContextMenuListener Window.Callback

    Known Direct Subclasses
    AccountAuthenticatorActivity, ActivityGroup, AliasActivity, ExpandableListActivity, FragmentActivity, ListActivity, NativeActivity

    Known Indirect Subclasses
    LauncherActivity, PreferenceActivity, TabActivity

    void setContentView(int layoutResID)
    Set the activity content from a layout resource.

    TextView
    public class
    TextView
    extends View
    implements ViewTreeObserver.OnPreDrawListener

    Known Direct Subclasses
    Button, CheckedTextView, Chronometer, DigitalClock, EditText, TextClock

    Known Indirect Subclasses
    AutoCompleteTextView, CheckBox, CompoundButton, ExtractEditText, MultiAutoCompleteTextView, RadioButton, Switch, ToggleButton

    Class Overview
    Displays text to the user and optionally allows them to edit it. A TextView is a complete text editor, however the basic class is configured to not allow editing; see EditText for a subclass that configures the text view for editing.

    Public Constructors
    TextView(Context context)
    TextView(Context context, AttributeSet attrs)
    TextView(Context context, AttributeSet attrs, int defStyle)

    展开全文
  • Android常用UI组件 - ListView

    千次阅读 2014-10-15 09:53:23
    列表视图(ListView)是Android当中一个非常重要的组件,它以列表的形式展示具体内容,并且能够根据数据的长度自适应显示。   列表的显示需要三个元素: 1.ListVeiw用来展示列表的View。 2.适配器用来把数据映射...
  •  今天继续介绍Android常用组件,不废话,直接开始。  SeekBar(拖动条)  进度条只能显示进度,用户不能与程序交互,通过对其操作来改变其值。而拖动条就可 以实现此功能。拖动条比较常见,如“千千静听”...
  • Android常用UI组件属性和.9图制作

    千次阅读 2015-08-21 12:00:02
    这样在按钮下面背景直接引用就可以了 android:background=”@drawable/btn_select” 富文本 mTextView=(TextView)findViewById(R.id.textView1); String text="我是 < font color = '#ff0000' > ...
  • 今天介绍一下Android常用的几种组件,都是Android中经常用的组件。  首先是单选框(RadioButton):  利用RadioGroup 进行分组,在RadioGroup 内定义若该RadioButton 选项。 要完成单选框显示,我们需要使用...
  • Android UI常用组件

    2012-09-22 13:26:30
    该资源是对Android 常用UI组件进行详细讲解
  • Android 常用UI组件

    2017-02-18 11:36:38
    Android 常用UI组件 1 上一篇说了 Android的布局,今天我们来说一说Android 中一些常用的 IU组件。 我们平时用的APP,界面如此之美观,都是先创建布局容器,然后向容器里添加界面组件,最后才形成一个美观的UI...
  • Android常用UI组件

    万次阅读 2017-04-16 16:37:37
    本篇对常用UI组件做出总结,只做总结,不码代码。 第1组UI组件:布局管理器: 所有布局管理器都是ViewGroup的子类,都可作为容器类使用,因其继承View,所以可嵌套 五大布局:线性、表格、帧布局、相对、网格、绝对...
  • Android 常用UI组件 2

    2017-02-19 13:12:06
    Android 常用UI组件 2【继续昨天没完成的内容~】 讲到 Button,那就讲讲 Button 派生出来的 ToggleButton (开关按钮)和 Switch (开关)。他们都提供两种状态。 【1】ToggleButtonToggleButton的XML属性和方法:...
  • Android常用UI组件总结

    千次阅读 2016-08-15 14:01:37
    UI组件之布局管理器 A. 线性布局(LinearLayout):控制各组件横向排列,到头之后,剩下的组件将不会显示出来。常用属性  1. android:baselineAligned(boolean):该属性布局为false将阻止该布局管理器与它的...
  • 1、Android常用的的UI组件: 2、TextView文本显示组件:  TextView组件的主要功能是向用户显示文本内容。  TextView组件在功能上可以有选择的让用户编辑文本。  TextView组件自身被设置为不允许编辑。 ...
  • 该组件是android中最常用的一个UI组件,用于实现在屏幕上显示​多个内容,以便于我们用手指来回翻转。 先在layout中进行布局我们的组件 <LinearLayout xmlns:android=http://schemas.android.com/apk/res/android ...
  • Android常用UI组件及应用

    千次阅读 2011-10-17 08:33:34
    android.widget.TextView android.widget.Button android.widget.EditText android.widget.CheckBox android.widget.RadioButton android.widg
  • 7款Android开发者常用Android UI组件

    千次阅读 2014-10-20 13:26:46
    Android开发是目前最热门的移动开发技术之一,随着开发者的不断努力和Android社区的进步,...本文是Android系列的第一篇,主要是向大家推荐一些常用Android UI组件,它们都是开源的。 1、图表引擎 - AChartE
  • Android高级UI组件 2.4.1适配器组件 适配器的作用 适配器充当适配器控件和该视图数据之间的桥梁。适配器提供访问的数据项,并负责产生数据组中的每个项的视图。 常用的适配器 BaseAdapter:抽象类,具有...
  • AndroidUI组件

    千次阅读 2011-12-13 21:13:45
    这两个组件非常常见,从第一天的HelloWord就开始接触这两个组件,这两个组件极其常用,但是功能又是非常强大的。有些功能在平时遇见可能也没有太在意,但是如果在开发的过程中能用到组件里面的功能是非常有好处的。...
  • android系统为我们提供了丰富的可视化用户界面组件,包括菜单、对话框、按钮、下拉框等。android系统借用了java里面的UI设计思想(Swing),包括事件响应机制和布局管理。android系统中所有的UI类都是建立在View和...
  • Android 中提供了一些与文本显示输入相关的组件通过这些组件可以显示或输入文字其中用于显示文本的组件为文本框组件用 TextView 类表示用于编辑文本的组件为编辑框组件用EditText 类表示这两个组件最大的区别是 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 32,868
精华内容 13,147
关键字:

android常用ui组件