流式布局
来源:互联网 发布:three.js入门指南 编辑:程序博客网 时间:2024/06/06 02:23
//activity_main
<?xml version="1.0" encoding="utf-8"?><android.support.constraint.ConstraintLayout 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="com.example.liushi.MainActivity"> <com.example.liushi.Liu android:layout_width="wrap_content" android:layout_height="wrap_content"> <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="这一生" /> <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="爱自由" /> </com.example.liushi.Liu></android.support.constraint.ConstraintLayout>
//Liu
package com.example.liushi;import android.content.Context;import android.graphics.Canvas;import android.util.AttributeSet;import android.view.View;import android.view.ViewGroup;/** * Created by 哥哥 on 2017/12/5 0005. */public class Liu extends ViewGroup { public Liu(Context context) { super(context); } public Liu(Context context, AttributeSet attrs) { super(context, attrs); } public Liu(Context context, AttributeSet attrs, int defStyleAttr) { super(context, attrs, defStyleAttr); } //测量 @Override protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { super.onMeasure(widthMeasureSpec, heightMeasureSpec); //测量子view measureChildren(widthMeasureSpec, heightMeasureSpec); } //绘制的方法 @Override protected void onDraw(Canvas canvas) { super.onDraw(canvas); } //用来确定子view的位置 @Override protected void onLayout(boolean changed, int l, int t, int r, int b) { //初始化子view的宽高 int wid = 0; int hei = 0; //得到子view的个数 int childcount = getChildCount(); for (int i = 0; i < childcount; i++) { //得到这个viewgroup里面的每一个子view View childView = getChildAt(i); //得到每一个子view的宽高 int width = childView.getMeasuredWidth(); int height = childView.getMeasuredHeight(); //确定子view的高度 childView.layout(wid, hei, wid + width, hei + height); //累加所有子view宽高 wid += width; hei += height; } }}//MainActivity
package com.example.liushi;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); }}
阅读全文
0 0
- GUI布局:边界布局、流式布局、网格布局、卡片布局
- Java_流式布局、边框布局以及网格布局
- 流式布局、浮动布局及绝对定位布局
- 流式布局,标签式布局
- Java_GUI_布局_流式布局
- 网站布局中的瀑布流式布局
- 固定布局与流式布局
- 练习---流式布局和网格布局
- java布局——流式布局
- 自定义布局VerticalView(倒置流式布局)
- css sticky footer布局+流式布局
- 流式布局
- html流式布局
- 拥抱流式布局
- 流式布局 RadioGroup
- 流式布局
- FlowLayout流式布局
- 流式布局
- 改变viewPager滑动的速度,利用反射完美实现
- layui获取选中行数据
- 递归算法及经典例子实现
- HTML select 复选框 互相值转换
- sftp配置
- 流式布局
- JAVA的数据类型
- 装载、链接与库总结
- 将输入的三个整数从小到大输出
- 下载远程URL文件
- 如何用EasyRecovery恢复电脑误删文件?
- Android五个进程等级
- excel操作快捷键
- docker 进入正在运行的容器