布局里 ,根布局是drawerlayout ,先写主背景的代码 再写侧面布局
<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/gen"
>
<!--先写主背景-->
<FrameLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/zhubeijing"
>
</FrameLayout>
<RelativeLayout
android:layout_width="200dp"
android:layout_height="match_parent"
android:id="@+id/cemian"
android:layout_gravity="left"
android:background="#ffffff"
>
<ListView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/list_view"
></ListView>
</RelativeLayout>
</android.support.v4.widget.DrawerLayout>
Mainactivity里面
public class MainActivity extends AppCompatActivity {
private ListView listView;
private DrawerLayout gen;
private FrameLayout zhubeijing;
private RelativeLayout cemian;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
listView = (ListView) findViewById(R.id.list_view);
gen = (DrawerLayout) findViewById(R.id.gen);
zhubeijing = (FrameLayout) findViewById(R.id.zhubeijing);
cemian = (RelativeLayout) findViewById(R.id.cemian);
List<String> list =new ArrayList<>();
list.add("新闻");
list.add("关注");
list.add("动态");
list.add("设置");
ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(MainActivity.this,android.R.layout.simple_list_item_1,android.R.id.text1,list);
listView.setAdapter(arrayAdapter);
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
//点击条目.给fragment传值过去,
Fragmentzhu fragmentzhu = new Fragmentzhu();
Bundle bundle = new Bundle();
bundle.putInt("key",i+1);
fragmentzhu.setArguments(bundle);
getSupportFragmentManager().beginTransaction().replace(R.id.zhubeijing,fragmentzhu).commit();
//关闭侧面
gen.closeDrawer(cemian);
}
});
}
}
用来替换主页面的fragment代码
onActivityCreated里面接受传来的参数 ,然后拼接url访问网络数据
int zhi = 1; @Override public void onActivityCreated(@Nullable Bundle savedInstanceState) { super.onActivityCreated(savedInstanceState); Bundle bundle = getArguments(); zhi = bundle.getInt("key"); Log.i("zhi",zhi+""); getDataFromNet(); }