1. 在app的gradle里面
com.github.andyoom:draggrid:v1.0.1
2.在项目的build.gradle中添加
maven {url "https://jitpack.io"}
3.权限
<!-- 在SDCard中创建与删除文件权限 -->
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
<!-- 往SDCard写入数据权限 -->
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<!-- 震动权限 -->
<uses-permission android:name="android.permission.VIBRATE"/>
6.0之后,权限验证机制区别于之前,之前加多少,自动拥有权限。6.0及之后,动态获取权限,需要自己去处理(现在已经有第三方库帮我们处理了,我们只需要调用)
4.在功能清单中配置ChannelActivity
在Activity里面
spf = getSharedPreferences("sss",MODE_PRIVATE);
if(spf.getString("json", null)!=null){
String string= spf.getString("json", null);
initDatas(string);
}else {
initFragment();
}
private void initFragment() {
listbean = new ArrayList<>();
listfragmen = new ArrayList<>();
bean = new Mybean();
bean.id="top";
bean.name="头条";
listbean.add(bean);
listfragmen.add(new MyFragment1());
bean=new Mybean();
bean.id="shehui";
bean.name="社会";
listbean.add(bean);
listfragmen.add(new MyFragment2());
bean=new Mybean();
bean.id="guonei";
bean.name="国内";
listbean.add(bean);
listfragmen.add(new MyFragment3());
bean=new Mybean();
bean.id="guoji";
bean.name="国际";
listbean.add(bean);
listfragmen.add(new MyFragment4());
bean=new Mybean();
bean.id="yule";
bean.name="娱乐";
listbean.add(bean);
listfragmen.add(new MyFragment5());
bean=new Mybean();
bean.id="tiyu";
bean.name="体育";
listbean.add(bean);
listfragmen.add(new MyFragment6());
bean=new Mybean();
bean.id="junshi";
bean.name="军事";
listbean.add(bean);
listfragmen.add(new MyFragment7());
bean=new Mybean();
bean.id="keji";
bean.name="科技";
listbean.add(bean);
listfragmen.add(new MyFragment8());
bean=new Mybean();
bean.id="caijing";
bean.name="财经";
listbean.add(bean);
listfragmen.add(new MyFragment9());
bean=new Mybean();
bean.id="shishang";
bean.name="时尚";
listbean.add(bean);
listfragmen.add(new MyFragment10());
tabhost.diaplay(listbean,listfragmen);
}
private void initData() {
img_add.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
json1 = spf.getString("json", null);
if(json1 ==null){
list1 = new ArrayList<ChannelBean>();
for (int i = 0; i <listbean.size() ; i++) {
ChannelBean bean;
bean=new ChannelBean(listbean.get(i).name,true);
list1.add(bean);
}
ChannelActivity.startChannelActivity(MainActivity.this,list1);
}else{
Gson gson=new Gson();
l = gson.fromJson(json1.toString(), new TypeToken<List<ChannelBean>>(){}.getType());
ChannelActivity.startChannelActivity(MainActivity.this, l);
}
}
});
}
private void initDatas(String json) {
Gson gson=new Gson();
l = gson.fromJson(json.toString(), new TypeToken<List<ChannelBean>>(){}.getType());
// getSupportFragmentManager().getFragments().removeAll(listfragmen);
listbean=new ArrayList<>();
//listfragmen.clear();
listfragmen=new ArrayList<>();
for (int i = 0; i <l.size() ; i++) {
boolean b = l.get(i).isSelect();
if(b){
System.out.println("sssss"+l.get(i).getName());
String name = l.get(i).getName();
switch (name){
case "头条":
bean=new Mybean();
bean.id="top";
bean.name="头条";
listbean.add(bean);
System.out.println("================"+bean.name);
listfragmen.add(new MyFragment1());
break;
case "社会":
bean=new Mybean();
bean.id="shehui";
bean.name="社会";
listbean.add(bean);
listfragmen.add(new MyFragment2());
break;
case "国内":
bean=new Mybean();
bean.id="guonei";
bean.name="国内";
listbean.add(bean);
listfragmen.add(new MyFragment3());
break;
case "国际":
bean=new Mybean();
bean.id="guoji";
bean.name="国际";
listbean.add(bean);
listfragmen.add(new MyFragment4());
break;
case "娱乐":
bean=new Mybean();
bean.id="yule";
bean.name="娱乐";
listbean.add(bean);
listfragmen.add(new MyFragment5());
break;
case "体育":
bean=new Mybean();
bean.id="tiyu";
bean.name="体育";
listbean.add(bean);
listfragmen.add(new MyFragment6());
break;
case "军事":
bean=new Mybean();
bean.id="junshi";
bean.name="军事";
listbean.add(bean);
listfragmen.add(new MyFragment7());
break;
case "科技":
bean=new Mybean();
bean.id="keji";
bean.name="科技";
listbean.add(bean);
listfragmen.add(new MyFragment8());
break;
case "财经":
bean=new Mybean();
bean.id="caijing";
bean.name="财经";
listbean.add(bean);
listfragmen.add(new MyFragment9());
break;
case "时尚":
bean=new Mybean();
bean.id="shishang";
bean.name="时尚";
listbean.add(bean);
listfragmen.add(new MyFragment10());
break;
}
}
}
tabhost.diaplay(listbean,listfragmen);
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
UMShareAPI.get(this).onActivityResult(requestCode,resultCode,data);
if(resultCode==101){
String json = data.getExtras().getString("json");
SharedPreferences sp=getSharedPreferences("sss",MODE_PRIVATE);
SharedPreferences.Editor edit = sp.edit();
edit.putString("json",json);
edit.commit();
if(spf.getString("json", null)!=null){
String string= spf.getString("json", null);
initDatas(string);
}else {
initFragment();
}
}
}