在简书上看到一篇文章,内容也是关于设置app状态栏和标题栏的颜色设置,感兴趣的可以去看看:http://www.jianshu.com/p/34a8b40b9308
这里只简单说明下我的实现方式:
1.在MainActivity的onCreate()里面将状态栏设置为透明的:
getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
2.在MainActivity的根布局文件里面使用RelativeLayout里面添加一个TextView控件充当一个标题栏(实际项目中可以视情况而定),同时为该标题栏RelativeLayout设置一个颜色则此时运行程序就可以实现状态栏和标题栏的颜色一致了。
下面简单贴下代码:
MainActivity:
public class MainActivity extends Activity{
private ListView mListView1;
private ListmDatas;
private Adapter1 mAdapter1;
@SuppressLint("NewApi")
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
setContentView(R.layout.activity_main);
initData();
initView();
}
private void initData() {
mDatas = new ArrayList<>(100);
String str = "";
for(int i=0;i<100;i++){
str = String.valueOf(i);
mDatas.add(str);
}
}
private void initView() {
mListView1 = (ListView)findViewById(R.id.listview1);
mAdapter1 = new Adapter1(this, mDatas);
mListView1.setAdapter(mAdapter1);
}
}
MainActivity的布局文件activity_main.xml:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#00ff00">
<RelativeLayout
android:id="@+id/rl_title"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:minHeight="100dp"
android:layout_alignParentTop="true"
android:background="#ff6c38">
<TextView
android:id="@+id/tv_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:text="测试Listview"
android:textSize="30dp"
android:textColor="#000000"/>
</RelativeLayout>
<ListView
android:id="@+id/listview1"
android:layout_below="@id/rl_title"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"/>
</RelativeLayout>