重温7 布局相关
1、LinearLayout
可以在控件中使用:
android:layout_weight="1" android:layout_width="0dp"設置控件占屏幕寬度,上表示占屏幕1/2。
2、TableLayout
<TableLayout android:stretchColums="1" ...>上指定為1表示拉伸第2列,指定為0表示拉伸第1列
<Button android:layout_span="2" .../>指定控件所占列數,上表示占兩列的空間。
3、創建自定義控件 XML、java、include標簽
java:
加載布局后
LayoutInflater.from(context).inflate(R.layout.title, this);
優:可以在代碼中設置點擊事件
package com.example.comeonlinearlayouttitle;import android.content.Context; import android.util.AttributeSet; import android.view.LayoutInflater; import android.widget.LinearLayout; import android.widget.Button; import android.view.View; import android.annotation.SuppressLint; import android.app.Activity; @SuppressLint("NewApi") public class TitleLayout extends LinearLayout{public TitleLayout(Context context) {super(context);// TODO Auto-generated constructor stub}public TitleLayout(Context context, AttributeSet attrs) {super(context, attrs);// TODO Auto-generated constructor stubLayoutInflater.from(context).inflate(R.layout.title, this);Button back_btn = (Button)findViewById(R.id.back);back_btn.setOnClickListener(new OnClickListener(){@Overridepublic void onClick(View view){//Context android.view.View.getContext()//Returns the context the view is running in((Activity) getContext()).finish();}});}public TitleLayout(Context context, AttributeSet attrs, int defStyle) {super(context, attrs, defStyle);// TODO Auto-generated constructor stub}} 在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"><com.example.comeonlinearlayouttitle.TitleLayout android:layout_height="wrap_content"android:layout_width="match_parent"></com.example.comeonlinearlayouttitle.TitleLayout></LinearLayout> <!-- <include layout="@layout/title"/> -->在XML中寫,使用include標簽
<include layout="@layout/title_layout"/>
完整代碼在:https://github.com/HiSunny/ComeOnTitle.git
總結
- 上一篇: 二战中美军制式步枪为何为M1加兰德(M1
- 下一篇: 持久化技术SharedPreferenc