在fragment写入简易的第三方频道管理(无Tablayout)

##在项目的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:如图:

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_43258668/article/details/84338922