Android布局控件的继承关系
16lz
2021-01-24
Android布局控件的继承关系
- 常用属性
- 线性布局
- 相对布局
- 帧布局 FrameLayout
- 网格布局 GridLayout
- 代码实现
常用属性
宽高
android:layout_width=“30dp”/“match_parent”/“wrap_content”
android:layout_height=“30dp”
盒子模型
padding:内边距
margin:外边距
重力
gravity:center 上下左右(布局设置)
layout_gravity:居中 上下左右(组件设置)
线性布局
常用属性:
方向:orientation (horizontal水平 vertical垂直)
权重:配合宽,高(宽高其中一个用0dp)
相对布局
特点:
有两种相对关系:相对父容器(7个属性 3个居中center 4个对齐align)
相对兄弟容器控件(8个属性 4个位置layout 4个对齐align)
帧布局 FrameLayout
特点:层层叠加覆盖
网格布局 GridLayout
特点:指定行列
常用属性:
行数:android:rowCount=“6”
列数:android:columnCount=“4”
跨列数:layout_columnSpan=“2”
跨行数:layout_rowSpan=“2”
列权重:layout_columnWeight=“1”
行权重:layout_rowWeight=“1”
代码实现
// An highlighted block<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <LinearLayout android:layout_width="match_parent" android:layout_height="0dp" android:orientation="horizontal" android:layout_weight="1.2"> <LinearLayout android:layout_width="0dp" android:layout_height="match_parent" android:layout_weight="1" android:background="#4688BD" android:orientation="horizontal"> <ImageView android:layout_width="wrap_content" android:layout_height="match_parent" android:src="@mipmap/t11" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="P2P活期账本" android:textColor="#fff" android:textSize="30dp" android:layout_marginLeft="50dp"/> <ImageView android:layout_width="wrap_content" android:layout_height="match_parent" android:src="@mipmap/t22" android:layout_marginLeft="60dp"/> </LinearLayout> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="0dp" android:layout_weight="1.7" android:orientation="horizontal"> <ImageView android:layout_width="match_parent" android:layout_height="wrap_content" android:scaleType="fitXY" android:src="@mipmap/guang" /> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="0dp" android:layout_weight="1.2" android:orientation="horizontal"> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@mipmap/tozi" /> <ImageView android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_marginLeft="140dp" android:src="@mipmap/xiangmu" /> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="0dp" android:orientation="horizontal" android:layout_weight="0.8"> <ImageView android:layout_width="match_parent" android:layout_height="match_parent" android:src="@mipmap/changping" android:scaleType="fitXY"/> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="0dp" android:orientation="horizontal" android:layout_weight="1.2"> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@mipmap/tp1"/> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="星火钱包(星火X100)" android:textSize="18dp" android:layout_marginTop="15dp"/> <LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="vertical"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="昨日收益"/> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="0"/> </LinearLayout> <LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="vertical"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="待收总额"/> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="0"/> </LinearLayout> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="0dp" android:orientation="horizontal" android:layout_weight="1.2"> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@mipmap/tp1"/> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="星火钱包(星火X100)" android:textSize="18dp" android:layout_marginTop="15dp"/> <LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="vertical"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="昨日收益"/> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="0"/> </LinearLayout> <LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="vertical"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="待收总额"/> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="0"/> </LinearLayout> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="0dp" android:orientation="horizontal" android:layout_weight="1.2"> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@mipmap/tp1"/> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="星火钱包(星火X100)" android:textSize="18dp" android:layout_marginTop="15dp"/> <LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="vertical"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="昨日收益"/> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="0"/> </LinearLayout> <LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="vertical"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="待收总额"/> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="0"/> </LinearLayout> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="0dp" android:orientation="horizontal" android:layout_weight="1.2"> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@mipmap/tp1"/> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="星火钱包(星火X100)" android:textSize="18dp" android:layout_marginTop="15dp"/> <LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="vertical"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="昨日收益"/> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="0"/> </LinearLayout> <LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="vertical"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="待收总额"/> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="0"/> </LinearLayout> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="0dp" android:orientation="horizontal" android:layout_weight="1.2" > <LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content"> </LinearLayout> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@mipmap/tt1" android:layout_weight="1"/> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@mipmap/tt2" android:layout_weight="1"/> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@mipmap/tt3" android:layout_weight="1"/> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@mipmap/tt4" android:layout_weight="1"/> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@mipmap/tt5" android:layout_weight="1"/> </LinearLayout></LinearLayout><?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent"> <Button android:id="@+id/b1" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="上"/> <Button android:id="@+id/b2" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:text="下"/> <Button android:id="@+id/b3" android:layout_width="55dp" android:layout_height="match_parent" android:layout_alignParentLeft="true" android:text="左"/> <Button android:id="@+id/b4" android:layout_width="55dp" android:layout_height="match_parent" android:layout_alignParentRight="true" android:text="右"/> <Button android:id="@+id/b11" android:layout_width="80dp" android:layout_height="40dp" android:layout_centerInParent="true" android:text="中间"/> <Button android:id="@+id/b22" android:layout_width="80dp" android:layout_height="40dp" android:layout_below="@id/b11" android:layout_centerInParent="true" android:text="下面"/> <Button android:id="@+id/b33" android:layout_width="80dp" android:layout_height="40dp" android:layout_above="@id/b11" android:layout_centerInParent="true" android:text="上面"/> <Button android:id="@+id/b44" android:layout_width="80dp" android:layout_height="40dp" android:layout_toLeftOf="@id/b11" android:layout_centerInParent="true" android:text="左面"/> <Button android:id="@+id/b55" android:layout_width="80dp" android:layout_height="40dp" android:layout_above="@id/b33" android:layout_centerInParent="true" android:layout_toRightOf="@id/b3" android:text="左上" /></RelativeLayout><?xml version="1.0" encoding="utf-8"?><FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".Frame_lianxiActivity"> <LinearLayout android:id="@+id/id1" android:layout_width="300dp" android:layout_height="300dp" android:layout_gravity="center" android:background="#FF0000" android:orientation="horizontal" android:visibility="invisible"> </LinearLayout> <LinearLayout android:id="@+id/id2" android:layout_width="250dp" android:layout_height="250dp" android:orientation="horizontal" android:layout_gravity="center" android:background="#00FF00" android:visibility="invisible"> </LinearLayout> <LinearLayout android:id="@+id/id3" android:layout_width="200dp" android:layout_height="200dp" android:orientation="horizontal" android:layout_gravity="center" android:background="#0000FF" android:visibility="invisible"> </LinearLayout> <LinearLayout android:layout_width="300dp" android:layout_height="60dp" android:orientation="horizontal" android:layout_gravity="bottom" android:layout_marginLeft="33dp" android:layout_marginBottom="40dp"> <Button android:id="@+id/but1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="上一页" android:layout_gravity="center" android:layout_marginLeft="60dp" android:onClick="d1"/> <Button android:id="@+id/but2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="下一页" android:layout_gravity="center"/> </LinearLayout></FrameLayout><?xml version="1.0" encoding="utf-8"?><FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent"> <LinearLayout android:layout_width="300dp" android:layout_height="300dp" android:layout_gravity="center" android:background="#FF0000" android:orientation="horizontal"> </LinearLayout> <LinearLayout android:layout_width="250dp" android:layout_height="250dp" android:orientation="horizontal" android:layout_gravity="center" android:background="#00FF00"> </LinearLayout> <LinearLayout android:layout_width="200dp" android:layout_height="200dp" android:orientation="horizontal" android:layout_gravity="center" android:background="#0000FF"> </LinearLayout> <LinearLayout android:layout_width="300dp" android:layout_height="60dp" android:orientation="horizontal" android:layout_gravity="bottom" android:layout_marginLeft="33dp" android:layout_marginBottom="40dp"> <Button android:id="@+id/but1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="上一页" android:layout_gravity="center" android:layout_marginLeft="60dp"/> <Button android:id="@+id/but2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="下一页" android:layout_gravity="center"/> </LinearLayout></FrameLayout>//JAVA代码package com.example.tx.myapplication;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.view.View;import android.widget.Button;import android.widget.ImageView;import android.widget.LinearLayout;import android.widget.ProgressBar;import android.widget.RadioButton;import android.widget.TextView;import android.widget.Toast;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;public class allActivity extends AppCompatActivity { Button btn1; Button btn2; Button btn3; Button btn4; Button btn5; LinearLayout linearLayout1; LinearLayout linearLayout2; LinearLayout linearLayout3; LinearLayout linearLayout4; TextView text1; ImageView imageView1; RadioButton radioButton1; RadioButton radioButton2; RadioButton radioButton3; RadioButton radioButton4; TextView textView01; TextView textView02; TextView textView03; TextView textView04; TextView textView05; TextView textView06; ImageView yejian; ImageView qiandao; ImageView touxiang; Button begin; TextView wenbenyu; ProgressBar jindutiao; StringBuffer stringBuffer = new StringBuffer(); int sum = 0; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_all); wenbenyu = findViewById(R.id.dq); jindutiao = findViewById(R.id.jdt); linearLayout1 = findViewById(R.id.activityall); linearLayout2 = findViewById(R.id.activity02); linearLayout3 = findViewById(R.id.activity03); linearLayout4 = findViewById(R.id.activity04); text1 = findViewById(R.id.textddbh); imageView1 = findViewById(R.id.xiaoshi); imageView1.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { linearLayout1.setVisibility(View.INVISIBLE); } }); btn1 = findViewById(R.id.btn01); btn1.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Toast.makeText(allActivity.this, "联系卖家", Toast.LENGTH_SHORT).show(); } }); btn2 = findViewById(R.id.btn02); btn2.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Toast.makeText(allActivity.this, "拨打电话", Toast.LENGTH_SHORT).show(); } }); btn3 = findViewById(R.id.btnfz); btn3.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Toast.makeText(allActivity.this, text1.getText().toString(), Toast.LENGTH_SHORT).show(); } }); btn4 = findViewById(R.id.btnscdd); btn4.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Toast.makeText(allActivity.this, "删除订单", Toast.LENGTH_SHORT).show(); } }); btn5 = findViewById(R.id.btnmlhq); btn5.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Toast.makeText(allActivity.this, "卖了换钱", Toast.LENGTH_SHORT).show(); } }); radioButton1 = findViewById(R.id.r01); radioButton1.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { linearLayout1.setVisibility(View.VISIBLE); linearLayout2.setVisibility(View.GONE); linearLayout3.setVisibility(View.GONE); linearLayout4.setVisibility(View.GONE); } }); radioButton2 = findViewById(R.id.r02); radioButton2.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { linearLayout1.setVisibility(View.GONE); linearLayout2.setVisibility(View.VISIBLE); linearLayout3.setVisibility(View.GONE); linearLayout4.setVisibility(View.GONE); } }); radioButton3 = findViewById(R.id.r03); radioButton3.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { linearLayout1.setVisibility(View.GONE); linearLayout2.setVisibility(View.GONE); linearLayout3.setVisibility(View.VISIBLE); linearLayout4.setVisibility(View.GONE); } }); radioButton4 = findViewById(R.id.r04); radioButton4.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { linearLayout1.setVisibility(View.GONE); linearLayout2.setVisibility(View.GONE); linearLayout3.setVisibility(View.GONE); linearLayout4.setVisibility(View.VISIBLE); } }); textView01 = findViewById(R.id.ling01); textView02 = findViewById(R.id.ling02); textView03 = findViewById(R.id.ling03); textView04 = findViewById(R.id.kydf); textView04.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Toast.makeText(allActivity.this, "口语得分:"+textView01.getText().toString(), Toast.LENGTH_SHORT).show(); } }); textView05 = findViewById(R.id.ydps); textView05.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Toast.makeText(allActivity.this, "阅读篇数:"+textView02.getText().toString(), Toast.LENGTH_SHORT).show(); } }); textView06 = findViewById(R.id.tlsc); textView06.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Toast.makeText(allActivity.this, "听力时长:"+textView03.getText().toString(), Toast.LENGTH_SHORT).show(); } }); yejian = findViewById(R.id.yjms); yejian.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Toast.makeText(allActivity.this, "夜间模式", Toast.LENGTH_SHORT).show(); } }); qiandao = findViewById(R.id.qd); qiandao.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Toast.makeText(allActivity.this, "签到成功", Toast.LENGTH_SHORT).show(); } }); touxiang = findViewById(R.id.tu1); touxiang.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Toast.makeText(allActivity.this, "编辑头像", Toast.LENGTH_SHORT).show(); } }); begin = findViewById(R.id.ksxz); begin.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { new LoadFile().start(); } }); } class LoadFile extends Thread{ @Override public void run() { super.run(); try { InputStream inputStream = getAssets().open("JiCheMeng.txt");// InputStreamReader inputStreamReade = new InputStreamReader(inputStream,"UTF-8");// BufferedReader bufferedReader = new BufferedReader(inputStreamReade); int maxlength = inputStream.available(); jindutiao.setMax(maxlength); int len = 0; byte[] bytes = new byte[50]; while((len = inputStream.read(bytes))!=-1){ String s = new String(bytes,0,len); stringBuffer.append(s); sum += len; try { Thread.sleep(1000); } catch (InterruptedException e) { e.printStackTrace(); } runOnUiThread(new Thread(){ @Override public void run() { super.run(); wenbenyu.setText(stringBuffer.toString()); jindutiao.setProgress(sum); } }); } inputStream.close(); } catch (IOException e) { e.printStackTrace(); } } }}
更多相关文章
- Android(安卓)tips3
- Android(安卓)Dialog 应用
- 改变分隔条,基于数组的ListView
- android 中调用ajax的问题
- Layout动画入门
- android中自定义view构造函数ContentItemView(Context context,
- android 自定义属性
- android 设置textview跑马灯效果
- Android的GridView和ScrollView的嵌套