##在项目的build.gradle 导入:
allprojects {
repositories {
google()
jcenter()
//只需要导入下面的:
maven {url “https://jitpack.io”}
}
在定义的Modle的build.gradle导入:
implementation 'com.github.andyoom:draggrid:v1.1.4'
Fragment对应的XML:一个button按钮
<?xml version="1.0" encoding="utf-8"?><android.support.constraint.ConstraintLayout
xmlns:android=“http://schemas.android.com/apk/res/android” android:layout_width=“match_parent”
android:layout_height=“match_parent”>
</android.support.constraint.ConstraintLayout>
Fragment:
package com.example.work09_07.Fragment;
import android.content.Intent;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import com.andy.library.ChannelActivity;
import com.andy.library.ChannelBean;
import com.example.work09_07.R;
import com.google.gson.Gson;
import java.util.ArrayList;
import static com.andy.library.ChannelActivity.REQUEST_CODE;
import static com.andy.library.ChannelActivity.RESULT_JSON_KEY;
public class VideoFragment extends Fragment {
//定义变量
private ArrayList list;
private Button but;
private String json;
@Nullable
@Override
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.videofragment, container, false);
but = view.findViewById(R.id.button);
return view;
}
@Override
public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
but.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (list == null) {//判断集合中是否已有数据,没有则创建
list = new ArrayList <>();
//向集合里添加数据
//第一个是显示的条目,第二个参数是否显示
list.add(new ChannelBean("热点", true));
list.add(new ChannelBean("军事", true));
list.add(new ChannelBean("八卦", true));
list.add(new ChannelBean("游戏", true));
list.add(new ChannelBean("宠物", true));
list.add(new ChannelBean("汽车1", false));
list.add(new ChannelBean("八卦1", false));
list.add(new ChannelBean("游戏1", false));
list.add(new ChannelBean("宠物1", false));
list.add(new ChannelBean("汽车2", false));
list.add(new ChannelBean("八卦2", false));
list.add(new ChannelBean("游戏2", false));
list.add(new ChannelBean("宠物2", false));
list.add(new ChannelBean("汽车2", false));
//进行跳转
Gson gson = new Gson();
String jsonArray = gson.toJson(list);
Intent it = new Intent(getActivity(), ChannelActivity.class);
it.putExtra(RESULT_JSON_KEY, jsonArray);
startActivityForResult(it, REQUEST_CODE);
}
}
});
}
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode== REQUEST_CODE&&resultCode==ChannelActivity.RESULT_CODE){
json = data.getStringExtra("json");
}
}
}
注意:
## 如果同级别的fragment里有image-loader。则对应的App继承AppApplication:如图: