创建一个抽象类 继承Activity 在oncreate方法中写方法 在类中定义抽象方法
package com.lbp.module4; import android.os.Bundle; import android.support.annotation.Nullable; import android.support.v7.app.AppCompatActivity; /** * Created by Administrator on 2017/11/22 0022. */ public abstract class BaseActivity extends AppCompatActivity { @Override protected void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); initView(); initData(); } protected abstract void initData(); protected abstract void initView (); } 在mainactivity中继承上面的类 重写他的抽象方法 不能写oncreate方法package com.lbp.module4; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.view.ViewGroup; import android.widget.BaseAdapter; import android.widget.ListView; import android.widget.TextView; import java.util.ArrayList; import java.util.List; public class MainActivity extends BaseActivity { private List<String> list = new ArrayList<>(); @Override protected void initData() { list.add("第一个"); list.add("第一个"); list.add("第一个"); list.add("第一个"); list.add("第一个"); list.add("第一个"); list.add("第一个"); } @Override protected void initView() { setContentView(R.layout.activity_main); ListView lv = findViewById(R.id.lv); initData(); MyAdapter adapter = new MyAdapter(); lv.setAdapter(adapter); } class MyAdapter extends BaseAdapter{ @Override public int getCount() { return list.size(); } @Override public Object getItem(int i) { return list.get(i); } @Override public long getItemId(int i) { return i; } @Override public View getView(int i, View view, ViewGroup viewGroup) { if(view==null){ view = View.inflate(MainActivity.this, R.layout.item, null); } TextView tv1 = view.findViewById(R.id.tv1); tv1.setText(list.get(i)); return view; } } }