Activity继承BaseActivity的使用

  • Post author:
  • Post category:其他


相信在android应用开发中有不少的相同布局,这时候当然你可以对于每个Activity去设置不同的xml,可是有相同的xml布局怎么办呢,再写一遍其不是很浪费时间,这时候我们可以写一个基类用来处理相同的布局部分!详见如下:




1.BaseActivity代码部分:

package com.example.com.test.test1;

import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.Window;
import android.widget.Button;
import android.widget.ImageButton;
import android.widget.LinearLayout;
import android.widget.TextView;

public class BaseActivity extends Activity {

//	共用的声明部分
	private TextView head_tv;
	private ImageButton imageButton_exit;
//	声明分配布局的layoutID,如果分配的是RelativeLayout,也可以,根据自己需求来换
	private LinearLayout llcontent;
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		
		super.onCreate(savedInstanceState);
//		去掉系统的TitleBar
		this.getWindow().requestFeature(Window.FEATURE_NO_TITLE);
		setContentView(R.layout.base);
	}
//	初始化
	public void BaseInit(){
		head_tv =(TextView)findViewById(R.id.header_tv);
		imageButton_exit = (ImageButton)findViewById(R.id.imageButton_exit);
	}
//  设置要显示的布局方法
	public void BaseSetContentView(int layoutID){
		llcontent = (LinearLayout)findViewById(R.id.llcontent);
//		获得inflater
		LayoutInflater inflater = (LayoutInflater)getSystemService(Context.LAYOUT_INFLATER_SERVICE);
//		把继承该BaseAcitivyt的layoutID放进来 显示
		View view = inflater.inflate(layoutID, null);
//		addview
		llcontent.addView(view);
	}
//  设置要下一个显示的布局
	public void BaseSetContentView_other(int layoutID){
		llcontent = (LinearLayout)findViewById(R.id.llcontent_other);
//		获得inflater
		LayoutInflater inflater = (LayoutInflater)getSystemService(Context.LAYOUT_INFLATER_SERVICE);
//		把继承该BaseAcitivyt的layoutID放进来 显示
		View view = inflater.inflate(layoutID, null);
//		addview
		llcontent.addView(view);
	}
//  获得head_tv
	public TextView getHead_tv(){
		return head_tv;
	}
//	设置TitleBar的textview-----
	public void setHead_tv(String text){
		head_tv.setText(text);
	}
//	



版权声明:本文为xyg165原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。