大二下学期团队项目(手机端)

今日实现了我的页面的,想看,在看,看过的页面内容的显示,原先想使用Fragment的嵌套,但是没有成功,
于是就给每个radiobutton绑定了一个事件,监听radiogroup是否发生改变,然后返回对应的数据,
注意不能使用activity要在fragment中编写,然后返回视图:Fragment部分
package com.example.cloudlibrary.Fragment;

import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.fragment.app.Fragment;
import androidx.fragment.app.FragmentActivity;
import androidx.viewpager.widget.ViewPager;

import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ListView;
import android.widget.RadioButton;
import android.widget.RadioGroup;

import com.example.cloudlibrary.Adapter.MyPagerListAdapter;
import com.example.cloudlibrary.Data.ListData;
import com.example.cloudlibrary.R;

import java.util.ArrayList;
import java.util.List;

public class MyPageFragment extends Fragment implements RadioGroup.OnCheckedChangeListener{
    private RadioGroup my_pager_group;
    private RadioButton want_look;
    private RadioButton now_look;
    private RadioButton have_look;
    private List<ListData> list_data=new ArrayList<>();
    private ListView mypager_like_list;
    private ListData listData;
    private View view;
    private MyPagerListAdapter myPagerListAdapter;


    public static final int PAGE_ONE = 0;
    public static final int PAGE_TWO = 1;
    public static final int PAGE_THREE = 2;
    public MyPageFragment(){
    }
    @Override
    public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
        view = inflater.inflate(R.layout.activity_my_page, container, false);
        my_pager_group = (RadioGroup) view.findViewById(R.id.my_pager_group);
        want_look = (RadioButton) view.findViewById(R.id.want_look);
        now_look = (RadioButton) view.findViewById(R.id.now_look);
        have_look = (RadioButton) view.findViewById(R.id.have_look);
        my_pager_group.setOnCheckedChangeListener(this);
        RadioButton[] rbs = new RadioButton[3];
        rbs[0] =want_look;
        rbs[1] = now_look;
        rbs[2] = have_look;
        return view;
    }

    @Override
    public void onCheckedChanged(RadioGroup group, int checkedId) {
        switch (checkedId) {
            case R.id.want_look:
                list_data=new ArrayList<>();
                listData=new ListData("head1","吹响吧,上低音号!");
                list_data.add(listData);
                //list_list_Data= dataDao.queryData("",query_stuid.getText().toString());
                mypager_like_list=(ListView)view.findViewById(R.id.mypager_like_list);
                myPagerListAdapter=new MyPagerListAdapter(getContext(),list_data);
                mypager_like_list.setAdapter(myPagerListAdapter);
                break;
            case R.id.now_look:
                list_data=new ArrayList<>();
                listData=new ListData("head2","AIR");
                list_data.add(listData);
                //list_list_Data= dataDao.queryData("",query_stuid.getText().toString());
                mypager_like_list=(ListView)view.findViewById(R.id.mypager_like_list);
                myPagerListAdapter=new MyPagerListAdapter(getContext(),list_data);
                mypager_like_list.setAdapter(myPagerListAdapter);
                break;
            case R.id.have_look:
                list_data=new ArrayList<>();
                listData=new ListData("head3","百变小樱");
                list_data.add(listData);
                //list_list_Data= dataDao.queryData("",query_stuid.getText().toString());
                mypager_like_list=(ListView)view.findViewById(R.id.mypager_like_list);
                myPagerListAdapter=new MyPagerListAdapter(getContext(),list_data);
                mypager_like_list.setAdapter(myPagerListAdapter);
                break;
        }
    }
}
listview adapter部分:
package com.example.cloudlibrary.Adapter;

import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.ListAdapter;
import android.widget.TextView;

import com.example.cloudlibrary.Data.ListData;
import com.example.cloudlibrary.R;

import org.w3c.dom.Text;

import java.util.ArrayList;
import java.util.List;

public class MyPagerListAdapter extends BaseAdapter {
    private List<ListData> list_data=new ArrayList<>();
    private Context context;
    public MyPagerListAdapter(Context context, List<ListData> list_data){
        this.context=context;
        this.list_data=list_data;
    }
    @Override
    public int getCount() {
        return list_data.size();
    }

    @Override
    public Object getItem(int position) {
        return null;
    }

    @Override
    public long getItemId(int position) {
        return 0;
    }

    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        if(convertView==null)
        {
            convertView= LayoutInflater.from(context).inflate(R.layout.mypager_like_list,null);
        }
        ImageView picture_list=(ImageView)convertView.findViewById(R.id.picture_list);
        TextView name_list=(TextView)convertView.findViewById(R.id.name_list);
        ListData listData=list_data.get(position);
        name_list.setText(listData.getName());
        switch (listData.getImg()){
            case "head1":
                picture_list.setImageResource(R.mipmap.head1);
                break;
            case "head2":
                picture_list.setImageResource(R.mipmap.head2);
                break;
            case "head3":
                picture_list.setImageResource(R.mipmap.head3);
                break;
        }
        return convertView;
    }
}
xml部分:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="80dp"
        android:orientation="horizontal">

        <ImageView
            android:id="@+id/first_head_picture"
            android:layout_width="60dp"
            android:layout_height="60dp"
            android:layout_marginTop="10dp"
            android:layout_marginLeft="10dp"
            android:src="@mipmap/headpictrue"></ImageView>

        <View
            android:layout_width="2px"
            android:layout_height="45dp"
            android:background="@color/login_line_color"
            android:layout_marginTop="20dp"
            android:layout_marginLeft="20dp"/>

        <LinearLayout
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:orientation="vertical">

            <TextView
                android:id="@+id/my_name"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginTop="10dp"
                android:textSize="20dp"
                android:layout_marginLeft="30dp"
                android:textColor="#EEAAFF"
                android:text="风吹过半夏"></TextView>


            <TextView
                android:id="@+id/my_phone"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginTop="10dp"
                android:textSize="20dp"
                android:layout_marginLeft="30dp"
                android:textColor="#EEAAFF"
                android:text="157****5171"></TextView>

        </LinearLayout>

    </LinearLayout>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical">

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="horizontal">

            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="我的收藏"
                android:textSize="20dp"></TextView>

            <RadioGroup
                android:id="@+id/my_pager_group"
                android:layout_width="match_parent"
                android:layout_height="30dp"
                android:layout_alignParentBottom="true"
                android:background="#ffffff"
                android:orientation="horizontal">

                <RadioButton android:id="@+id/want_look"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    style="@style/tab_menu_item"
                    android:text="想看"></RadioButton>

                <RadioButton android:id="@+id/now_look"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    style="@style/tab_menu_item"
                    android:text="在看"></RadioButton>

                <RadioButton android:id="@+id/have_look"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    style="@style/tab_menu_item"
                    android:text="看过"></RadioButton>

            </RadioGroup>

        </LinearLayout>

        <View
            android:id="@+id/div_tab_bar"
            android:layout_width="match_parent"
            android:layout_height="2px"
            android:layout_above="@id/main_group"
            android:background="#DFDBDB" />

        <ListView android:id="@+id/mypager_like_list"
            android:layout_width="match_parent"
            android:layout_height="wrap_content">
        </ListView>

    </LinearLayout>


</LinearLayout>

 

 

 

 

今日实现了我的页面的,想看,在看,看过的页面内容的显示,原先想使用Fragment的嵌套,但是没有成功,于是就给每个radiobutton绑定了一个事件,监听radiogroup是否发生改变,然后返回对应的数据,注意不能使用activity要在fragment中编写,然后返回视图:
Fragment部分

package com.example.cloudlibrary.Fragment;



import androidx.annotation.NonNull;

import androidx.annotation.Nullable;

import androidx.fragment.app.Fragment;

import androidx.fragment.app.FragmentActivity;

import androidx.viewpager.widget.ViewPager;



import android.os.Bundle;

import android.view.LayoutInflater;

import android.view.View;

import android.view.ViewGroup;

import android.widget.ListView;

import android.widget.RadioButton;

import android.widget.RadioGroup;



import com.example.cloudlibrary.Adapter.MyPagerListAdapter;

import com.example.cloudlibrary.Data.ListData;

import com.example.cloudlibrary.R;



import java.util.ArrayList;

import java.util.List;



public class MyPageFragment extends Fragment implements RadioGroup.OnCheckedChangeListener{

    private RadioGroup my_pager_group;

    private RadioButton want_look;

    private RadioButton now_look;

    private RadioButton have_look;

    private List<ListData> list_data=new ArrayList<>();

    private ListView mypager_like_list;

    private ListData listData;

    private View view;

    private MyPagerListAdapter myPagerListAdapter;





    public static final int PAGE_ONE = 0;

    public static final int PAGE_TWO = 1;

    public static final int PAGE_THREE = 2;

    public MyPageFragment(){

    }

    @Override

    public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {

        view = inflater.inflate(R.layout.activity_my_page, container, false);

        my_pager_group = (RadioGroup) view.findViewById(R.id.my_pager_group);

        want_look = (RadioButton) view.findViewById(R.id.want_look);

        now_look = (RadioButton) view.findViewById(R.id.now_look);

        have_look = (RadioButton) view.findViewById(R.id.have_look);

        my_pager_group.setOnCheckedChangeListener(this);

        RadioButton[] rbs = new RadioButton[3];

        rbs[0] =want_look;

        rbs[1] = now_look;

        rbs[2] = have_look;

        return view;

    }



    @Override

    public void onCheckedChanged(RadioGroup group, int checkedId) {

        switch (checkedId) {

            case R.id.want_look:

                list_data=new ArrayList<>();

                listData=new ListData("head1","吹响吧,上低音号!");

                list_data.add(listData);

                //list_list_Data= dataDao.queryData("",query_stuid.getText().toString());

                mypager_like_list=(ListView)view.findViewById(R.id.mypager_like_list);

                myPagerListAdapter=new MyPagerListAdapter(getContext(),list_data);

                mypager_like_list.setAdapter(myPagerListAdapter);

                break;

            case R.id.now_look:

                list_data=new ArrayList<>();

                listData=new ListData("head2","AIR");

                list_data.add(listData);

                //list_list_Data= dataDao.queryData("",query_stuid.getText().toString());

                mypager_like_list=(ListView)view.findViewById(R.id.mypager_like_list);

                myPagerListAdapter=new MyPagerListAdapter(getContext(),list_data);

                mypager_like_list.setAdapter(myPagerListAdapter);

                break;

            case R.id.have_look:

                list_data=new ArrayList<>();

                listData=new ListData("head3","百变小樱");

                list_data.add(listData);

                //list_list_Data= dataDao.queryData("",query_stuid.getText().toString());

                mypager_like_list=(ListView)view.findViewById(R.id.mypager_like_list);

                myPagerListAdapter=new MyPagerListAdapter(getContext(),list_data);

                mypager_like_list.setAdapter(myPagerListAdapter);

                break;

        }

    }

}
listview adapter部分:

package com.example.cloudlibrary.Adapter;



import android.content.Context;

import android.view.LayoutInflater;

import android.view.View;

import android.view.ViewGroup;

import android.widget.BaseAdapter;

import android.widget.ImageView;

import android.widget.ListAdapter;

import android.widget.TextView;



import com.example.cloudlibrary.Data.ListData;

import com.example.cloudlibrary.R;



import org.w3c.dom.Text;



import java.util.ArrayList;

import java.util.List;



public class MyPagerListAdapter extends BaseAdapter {

    private List<ListData> list_data=new ArrayList<>();

    private Context context;

    public MyPagerListAdapter(Context context, List<ListData> list_data){

        this.context=context;

        this.list_data=list_data;

    }

    @Override

    public int getCount() {

        return list_data.size();

    }



    @Override

    public Object getItem(int position) {

        return null;

    }



    @Override

    public long getItemId(int position) {

        return 0;

    }



    @Override

    public View getView(int position, View convertView, ViewGroup parent) {

        if(convertView==null)

        {

            convertView= LayoutInflater.from(context).inflate(R.layout.mypager_like_list,null);

        }

        ImageView picture_list=(ImageView)convertView.findViewById(R.id.picture_list);

        TextView name_list=(TextView)convertView.findViewById(R.id.name_list);

        ListData listData=list_data.get(position);

        name_list.setText(listData.getName());

        switch (listData.getImg()){

            case "head1":

                picture_list.setImageResource(R.mipmap.head1);

                break;

            case "head2":

                picture_list.setImageResource(R.mipmap.head2);

                break;

            case "head3":

                picture_list.setImageResource(R.mipmap.head3);

                break;

        }

        return convertView;

    }

}
xml部分:

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

    xmlns:app="http://schemas.android.com/apk/res-auto"

    xmlns:tools="http://schemas.android.com/tools"

    android:layout_width="match_parent"

    android:layout_height="match_parent"

    android:orientation="vertical">



    <LinearLayout

        android:layout_width="match_parent"

        android:layout_height="80dp"

        android:orientation="horizontal">



        <ImageView

            android:id="@+id/first_head_picture"

            android:layout_width="60dp"

            android:layout_height="60dp"

            android:layout_marginTop="10dp"

            android:layout_marginLeft="10dp"

            android:src="@mipmap/headpictrue"></ImageView>



        <View

            android:layout_width="2px"

            android:layout_height="45dp"

            android:background="@color/login_line_color"

            android:layout_marginTop="20dp"

            android:layout_marginLeft="20dp"/>



        <LinearLayout

            android:layout_width="wrap_content"

            android:layout_height="wrap_content"

            android:orientation="vertical">



            <TextView

                android:id="@+id/my_name"

                android:layout_width="wrap_content"

                android:layout_height="wrap_content"

                android:layout_marginTop="10dp"

                android:textSize="20dp"

                android:layout_marginLeft="30dp"

                android:textColor="#EEAAFF"

                android:text="风吹过半夏"></TextView>





            <TextView

                android:id="@+id/my_phone"

                android:layout_width="wrap_content"

                android:layout_height="wrap_content"

                android:layout_marginTop="10dp"

                android:textSize="20dp"

                android:layout_marginLeft="30dp"

                android:textColor="#EEAAFF"

                android:text="157****5171"></TextView>



        </LinearLayout>



    </LinearLayout>



    <LinearLayout

        android:layout_width="match_parent"

        android:layout_height="match_parent"

        android:orientation="vertical">



        <LinearLayout

            android:layout_width="match_parent"

            android:layout_height="wrap_content"

            android:orientation="horizontal">



            <TextView

                android:layout_width="wrap_content"

                android:layout_height="wrap_content"

                android:text="我的收藏"

                android:textSize="20dp"></TextView>



            <RadioGroup

                android:id="@+id/my_pager_group"

                android:layout_width="match_parent"

                android:layout_height="30dp"

                android:layout_alignParentBottom="true"

                android:background="#ffffff"

                android:orientation="horizontal">



                <RadioButton android:id="@+id/want_look"

                    android:layout_width="wrap_content"

                    android:layout_height="wrap_content"

                    style="@style/tab_menu_item"

                    android:text="想看"></RadioButton>



                <RadioButton android:id="@+id/now_look"

                    android:layout_width="wrap_content"

                    android:layout_height="wrap_content"

                    style="@style/tab_menu_item"

                    android:text="在看"></RadioButton>



                <RadioButton android:id="@+id/have_look"

                    android:layout_width="wrap_content"

                    android:layout_height="wrap_content"

                    style="@style/tab_menu_item"

                    android:text="看过"></RadioButton>



            </RadioGroup>



        </LinearLayout>



        <View

            android:id="@+id/div_tab_bar"

            android:layout_width="match_parent"

            android:layout_height="2px"

            android:layout_above="@id/main_group"

            android:background="#DFDBDB" />



        <ListView android:id="@+id/mypager_like_list"

            android:layout_width="match_parent"

            android:layout_height="wrap_content">

        </ListView>



    </LinearLayout>





</LinearLayout>

posted @ 2021-05-06 22:14  风吹过半夏  阅读(38)  评论(0编辑  收藏  举报