1、这是封装的Activity
package com.example.day2017_10_21demo;
import android.app.Application;
import android.os.Bundle;
import android.os.PersistableBundle;
import android.support.annotation.Nullable;
import android.support.v7.app.AppCompatActivity;
/**
* Created by 墨鸦 on 2017/10/21.
*/
public abstract class BaseActivity extends AppCompatActivity {
@Override
public void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//设置内容视图
setContentView(getLayout());
findView();
initData();
setListener();
setDrawlayoutListview();
setFragment();
}
//获取布局的id
public abstract int getLayout();
//查找页面上的组件
public abstract void findView();
//初始化数据
public abstract void initData();
//设置监听
public abstract void setListener();
//设置Drawlayout的列表适配器
public abstract void setDrawlayoutListview();
//动态添加fragment
public abstract void setFragment();
}
2、这是实际运行的Activity继承上一个Activity
package com.example.day2017_10_21demo;
import android.support.v4.widget.DrawerLayout;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.FrameLayout;
import android.widget.ImageView;
import android.widget.ListView;
import android.widget.RelativeLayout;
import com.example.day2017_10_21demo.Fragment.FragmentMain;
import com.example.day2017_10_21demo.Fragment.FragmentSouye;
import java.util.ArrayList;
import java.util.List;
public class MainActivity extends BaseActivity {
private DrawerLayout drawerLayout;
private FrameLayout frameLayout;
private RelativeLayout drawerlayut_layout_left;
private ImageView drawer_layout_left_img;
private ListView drawer_layout_left_listview;
private List<String> list=new ArrayList<String>();
//获取布局的id
@Override
public int getLayout() {
//加载的布局id
return R.layout.activity_main;
}
//查找页面上的组件
@Override
public void findView() {
//主页面的控件
drawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout);
frameLayout = (FrameLayout) findViewById(R.id.frame_layout);
drawerlayut_layout_left = (RelativeLayout) findViewById(R.id.drawer_layout_left);
drawer_layout_left_img = (ImageView) findViewById(R.id.drawer_layout_left_img);
drawer_layout_left_listview = (ListView) findViewById(R.id.drawer_layout_left_listview);
}
//初始化数据
@Override
public void initData() {
//给drawerlayout的listview设置数据
list.add("钱包");
list.add("行程记录");
list.add("好友邀请");
list.add("设置");
}
//设置监听
@Override
public void setListener() {
//drawerlayout的listview的条目监听
drawer_layout_left_listview.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
//关闭drawlayout视图
drawerLayout.closeDrawer(drawerlayut_layout_left);
}
});
}
//设置Drawlayout的列表适配器
@Override
public void setDrawlayoutListview() {
//设置android默认适配器
ArrayAdapter<String> adapter=new ArrayAdapter<String>(MainActivity.this, android.R.layout.simple_list_item_1,list);
//添加适配器
drawer_layout_left_listview.setAdapter(adapter);
}
@Override
public void setFragment() {
getSupportFragmentManager().beginTransaction().replace(R.id.frame_layout,new FragmentMain()).commit();
}
}