自定义组件就行。如果觉得还不好就创建一个module。
关于自定义组件的实例,请参考android学习手册,android学习手册包含9个章节,108个例子,源码文档随便看,例子都是可交互,可运行,源码采用android studio目录结构,高亮显示代码,文档都采用文档结构图显示,可以快速定位。360手机助手中下载,图标上有贝壳
.多个Activity共用相同布局或者相同控件:避免重复代码;
BaseActivit代码:
public class BaseActivity extends Activity implements OnClickListener
{
/*
* 多个Activity共用相同布局或者相同控件
* 写个基类继承,避免重复代码
*/
@Override
public void onClick(View v)
{
switch (v.getId())
{
case R.id.common_titlebar_btn_back:
finish();
break;
default:
break;
}
baseOnClick(v);
}
protected void baseOnClick(View v)
{
}
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
// setContentView(R.layout.activity_base);
}
@Override
protected void onResume()
{
super.onResume();
onPostOnCreate();
}
public final void onPostOnCreate()//find同一个控件
{
findViewById(R.id.common_titlebar_btn_back).setOnClickListener(this);
}
@Override
public boolean onCreateOptionsMenu(Menu menu)
{
getMenuInflater().inflate(R.menu.base, menu);
return true;
}
}
子类代码:
public class ThirdActivity extends BaseActivity
{
/**
* layout里复用同一布局:
* < include
* android:id="@+id/include1"
* layout="@layout/common_titlebar" />
*/
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_third_main);
}
}