shua

package com.bwie.fragment;
import android.content.Context;
import android.content.SharedPreferences;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
import android.os.AsyncTask;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.preference.Preference;
import android.support.annotation.Nullable;
import android.support.v4.app.Fragment;
import android.support.v4.media.MediaBrowserCompat;
import android.support.v4.view.PagerAdapter;
import android.support.v4.view.ViewPager;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.TextView;
import android.widget.Toast;


import com.bwie.bean.bean;
import com.bwie.bean.bean2;
import com.bwie.view.XListView;
import com.google.gson.Gson;
import com.nostra13.universalimageloader.core.DisplayImageOptions;
import com.nostra13.universalimageloader.core.ImageLoader;
import com.nostra13.universalimageloader.core.ImageLoaderConfiguration;

import org.json.JSONArray;
import org.json.JSONObject;

import java.io.BufferedReader;
import java.io.DataOutputStream;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import java.text.SimpleDateFormat;
import java.util.AbstractList;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

import Mysqlite.Mysqlitedao;
import xiangmu.bwiei.com.xiangmu01.R;


/**
 * Created by 0514 on 2017/8/17.
 */

public class fragment1 extends Fragment implements ViewPager.OnPageChangeListener, XListView.IXListViewListener{
    private List<ImageView> listtu = new ArrayList<ImageView>();
    private List<Integer> list = new ArrayList<Integer>();
    private List<bean2> books1 = new ArrayList<bean2>();
    private LinearLayout lv_line;
    private SharedPreferences sp;
    private int zidong;
    private ViewPager view_pager2;
    private Handler han;
    private View view;
    private XListView xlist;
    private ImageView te_dong;
    private ImageView te_deng2;
    private Adapter adapter;
    private int start = 0;
    private  int skip=2000;
    private String Posturl = "http://japi.juhe.cn/comic/book?skip=2000&key=305fe3d8b1cff7311942a3a4ee72801c";
    private Mysqlitedao dao;
    private List<bean2> books;


    public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
        view = View.inflate(getContext(), R.layout.fragment1, null);

        view_pager2 = view.findViewById(R.id.view_Pager2);
        lv_line = view.findViewById(R.id.lv_line);
        xlist = view.findViewById(R.id.xlist);
        xlist.setXListViewListener(this);
        sp = getActivity().getSharedPreferences("s",Context.MODE_PRIVATE);
        xlist.setPullLoadEnable(true);
        xlist.setPullRefreshEnable(true);
        dao = new Mysqlitedao(getActivity());
        inittu();
        initData();
        new MyAsyntask().execute(Posturl);
        han = new Handler(){
            @Override
            public void handleMessage(Message msg) {
                super.handleMessage(msg);


                if (msg.what==zidong){


                    int currentItem = view_pager2.getCurrentItem();
                    currentItem++;
                    view_pager2.setCurrentItem(currentItem);

                    han.sendEmptyMessageDelayed(zidong,2000);


                }
            }


        };

        han.sendEmptyMessageDelayed(zidong,2000);

        view_pager2.setAdapter(new Myadapter());

        view_pager2.setOnPageChangeListener(new ViewPager.OnPageChangeListener() {
            @Override
            public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {


            }

            @Override
            public void onPageSelected(int position) {


                for (int i = 0; i <listtu.size(); i++) {


                    if(i==position%list.size())
                    {
                        listtu.get(i).setImageResource(R.drawable.hong);

                    }else{

                        listtu.get(i).setImageResource(R.drawable.bai);

                    }
                }
            }

            @Override
            public void onPageScrollStateChanged(int state) {


            }
        });


        return view;

    }




    private void initData() {

        for (int i = 0; i <list.size() ; i++) {

            ImageView iv = new ImageView(getContext());

            if(i==0)
            {

                iv.setImageResource(R.drawable.hong);

            }else{

                iv.setImageResource(R.drawable.bai);

            }

            LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams(20,20);

            lp.setMargins(10,10,10,10);
            lv_line.addView(iv,lp);
            listtu.add(iv);

        }


    }




    private void inittu() {

        list.add(R.drawable.a);
        list.add(R.drawable.b);
        list.add(R.drawable.d);



    }

    @Override
    public void onRefresh() {

        ConnectivityManager cm = (ConnectivityManager) getActivity().getSystemService(Context.CONNECTIVITY_SERVICE);
        NetworkInfo info = cm.getActiveNetworkInfo();
        if(info!=null)
        {
            han.postDelayed(new Runnable() {
                @Override
                public void run() {
                    start = 0;
                    books1.clear();
                    books.clear();
                    xlist.setPullLoadEnable(true);
                    skip+=2000;
                    Posturl = "http://japi.juhe.cn/comic/book?skip="+skip+"&key=3e09796970b04508f16de756d36d4bb8";
                    new MyAsyntask().execute(Posturl);
                    onload();

                }
            },2000);
        }else{
            Toast.makeText(getActivity(), "请检查网络", Toast.LENGTH_SHORT).show();
            onload();

        }




    }

    @Override
    public void onLoadMore() {

        ConnectivityManager cm = (ConnectivityManager) getActivity().getSystemService(Context.CONNECTIVITY_SERVICE);
        NetworkInfo info = cm.getActiveNetworkInfo();
        if(info!=null)
        {
            han.postDelayed(new Runnable() {
                @Override
                public void run() {
                    start+=5;
                    books = getItems(books1);
                    adapter.notifyDataSetChanged();
                    onload();

                }
            },2000);


        }else{


            Toast.makeText(getActivity(), "请检查网络", Toast.LENGTH_SHORT).show();
            onload();

        }


    }



    private List<bean2> getItems(List<bean2> books1){

        if(start+10>=books1.size())
        {

            books.clear();
            for (int i = 0; i <books1.size() ; i++) {
                books.add(books1.get(i));
            }
            xlist.setPullLoadEnable(false);
            Toast.makeText(getActivity(), "已加载全部数据", Toast.LENGTH_SHORT).show();
            start=0;
            books=books1;
        }else{

            books.clear();
            for (int i = 0; i <start+10 ; i++) {

                books.add(books1.get(i));
                
            }


        }

        return books;
    }



    private void onload(){
        xlist.stopRefresh();
        xlist.stopLoadMore();
        SimpleDateFormat formatter   =   new   SimpleDateFormat   ("HH:mm:ss");
        Date curDate =  new Date(System.currentTimeMillis());
        String   str   =   formatter.format(curDate);
        xlist.setRefreshTime(str);


    }

    @Override
    public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {

    }

    @Override
    public void onPageSelected(int position) {

    }

    @Override
    public void onPageScrollStateChanged(int state) {

    }

    class Myadapter extends PagerAdapter {


        @Override
        public Object instantiateItem(ViewGroup container, int position) {

            View view = View.inflate(getContext(), R.layout.tu1, null);
            ImageView te_tu2 = view.findViewById(R.id.te_tu2);

            te_tu2.setImageResource(list.get(position%list.size()));
            container.addView(view);


            return view;
        }

        @Override
        public void destroyItem(ViewGroup container, int position, Object object) {
           container.removeView((View) object);
        }

        @Override
        public int getCount() {
            return Integer.MAX_VALUE;
        }

        @Override
        public boolean isViewFromObject(View view, Object object) {
            return view==object;
        }
    }




    class  Adapter extends BaseAdapter{

        private final  int a = 0;
        private final  int b = 1;
        private final int sum = 2;

        @Override
        public int getCount() {
            return books.size();
        }

        @Override
        public Object getItem(int i) {
            return books.get(i);
        }

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

        @Override
        public int getItemViewType(int position) {
            String area = books1.get(position).area;

            if(area.equals("国漫"))
            {
                return a;

            }else{
                return b;

            }

        }

        @Override
        public int getViewTypeCount() {
            return sum;
        }

        @Override
        public View getView(int i, View view, ViewGroup viewGroup) {

            ViewHloder1  viewHloder1= null;
            ViewHloder2  viewHloder2 = null;
            int type = getItemViewType(i);
            if(view==null) {
                switch (type) {
                    case a:
                        viewHloder1 = new ViewHloder1();
                        view = View.inflate(getContext(), R.layout.item1, null);
                        view.setTag(viewHloder1);
                        viewHloder1.te_title = view.findViewById(R.id.te_title);
                        viewHloder1.te_lei = view.findViewById(R.id.te_lei);
                        viewHloder1.te_dong = view.findViewById(R.id.te_dong);
                        break;

                    case b:
                        viewHloder2 = new ViewHloder2();
                        view = View.inflate(getContext(), R.layout.item2, null);
                        view.setTag(viewHloder2);
                        viewHloder2.te_title2 = view.findViewById(R.id.te_title2);
                        viewHloder2.te_lei2 = view.findViewById(R.id.te_lei2);
                        viewHloder2.te_dong2 = view.findViewById(R.id.te_dong2);
                        break;

                }
            }else{
                switch (type){
                    case a:
                        viewHloder1 = (ViewHloder1) view.getTag();
                        break;
                    case b:
                        viewHloder2 = (ViewHloder2) view.getTag();
                        break;

                }

            }
            switch (type){
                case a:

                    viewHloder1.te_title.setText(books.get(i).name);
                    viewHloder1.te_lei.setText(books.get(i).area);
                    DisplayImageOptions opt = new DisplayImageOptions.Builder().cacheInMemory(true).cacheOnDisk(true).build();
                    ImageLoaderConfiguration con = new ImageLoaderConfiguration.Builder(getContext()).defaultDisplayImageOptions(opt).build();
                    ImageLoader.getInstance().init(con);
                    ImageLoader.getInstance().displayImage(books.get(i).coverImg,viewHloder1.te_dong);
                    break;

                case b:

                    viewHloder2.te_title2.setText(books.get(i).name);
                    viewHloder2.te_lei2.setText(books.get(i).area);

                    DisplayImageOptions opt2 = new DisplayImageOptions.Builder().cacheInMemory(true).cacheOnDisk(true).build();
                    ImageLoaderConfiguration con1 = new ImageLoaderConfiguration.Builder(getContext()).defaultDisplayImageOptions(opt2).build();
                    ImageLoader.getInstance().init(con1);
                    ImageLoader.getInstance().displayImage(books.get(i).coverImg,viewHloder2.te_dong2);

                    break;

            }


            return view;
        }
    }


    public class ViewHloder1{

        public TextView te_title,te_lei;
        public ImageView te_dong;




    }


   public class ViewHloder2{


       public TextView te_title2,te_lei2;
       public ImageView te_dong2;



   }



    class MyAsyntask extends AsyncTask<String,Integer,String>{

        @Override
        protected String doInBackground(String... strings) {


            try {

                final StringBuffer sb = new StringBuffer();
                URL url = new URL(strings[0]);

                HttpURLConnection connection = (HttpURLConnection) url.openConnection();
                connection.setRequestMethod("POST");
                connection.setDoOutput(true);
                connection.setDoInput(true);


                DataOutputStream outputStream = new DataOutputStream(connection.getOutputStream());
                outputStream.flush();
                outputStream.close();
                connection.connect();
                if(200==connection.getResponseCode())
                {

                    BufferedReader reader = new BufferedReader(new InputStreamReader(connection.getInputStream()));
                    String line = null;
                    while ((line=reader.readLine())!=null){

                        sb.append(line);

                    }

                    return sb.toString();


                }



            } catch (java.io.IOException e) {
                e.printStackTrace();
            }


            return null;
        }

        @Override
        protected void onPostExecute(String s) {


            super.onPostExecute(s);

            ConnectivityManager cm = (ConnectivityManager) getActivity().getSystemService(Context.CONNECTIVITY_SERVICE);
            NetworkInfo info = cm.getActiveNetworkInfo();
            if(info!=null)
            {
                if(sp.getBoolean("f",false))
                {
                    JieXi(s);
                    dao.update("shuju",s);

                }else{
                    sp.edit().putBoolean("f",true).commit();
                    dao.add("shuju",s);
                    JieXi(s);
                }

            }else{
                s=dao.select();
                JieXi(s);
            }






        }
    }



    //解析
    private void JieXi(String s){

        try {
            JSONObject json=new JSONObject(s);
            JSONObject result = json.getJSONObject("result");
            JSONArray bookList = result.getJSONArray("bookList");
            for (int i = 0; i <bookList.length() ; i++) {
                JSONObject b= (JSONObject) bookList.get(i);
                bean2 book = new bean2();
                book.name=b.getString("name");
                book.area=b.getString("area");
                book.coverImg=b.getString("coverImg");
                books1.add(book);
                //System.out.println(book.name);
            }
            if(books1!=null){
                books=new ArrayList<>();
                books = getItems(books1);
                adapter= new Adapter();
                xlist.setAdapter(adapter);
            }
        } catch (Exception e) {
            e.printStackTrace();
        }





    }


}
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
拼音数据(无声调):a ai an ang ao ba bai ban bang bao bei ben beng bi bian biao bie bin bing bo bu ca cai can cang cao ce cen ceng cha chai chan chang chao che chen cheng chi chong chou chu chua chuai chuan chuang chui chun chuo ci cong cou cu cuan cui cun cuo da dai dan dang dao de den dei deng di dia dian diao die ding diu dong dou du duan dui dun duo e ei en eng er fa fan fang fei fen feng fo fou fu ga gai gan gang gao ge gei gen geng gong gou gu gua guai guan guang gui gun guo ha hai han hang hao he hei hen heng hong hou hu hua huai huan huang hui hun huo ji jia jian jiang jiao jie jin jing jiong jiu ju juan jue jun ka kai kan kang kao ke ken keng kong kou ku kua kuai kuan kuang kui kun kuo la lai lan lang lao le lei leng li lia lian liang liao lie lin ling liu long lou lu lü luan lue lüe lun luo ma mai man mang mao me mei men meng mi mian miao mie min ming miu mo mou mu na nai nan nang nao ne nei nen neng ng ni nian niang niao nie nin ning niu nong nou nu nü nuan nüe nuo nun ou pa pai pan pang pao pei pen peng pi pian piao pie pin ping po pou pu qi qia qian qiang qiao qie qin qing qiong qiu qu quan que qun ran rang rao re ren reng ri rong rou ru ruan rui run ruo sa sai san sang sao se sen seng sha shai shan shang shao she shei shen sheng shi shou shu shua shuai shuan shuang shui shun shuo si song sou su suan sui sun suo ta tai tan tang tao te teng ti tian tiao tie ting tong tou tu tuan tui tun tuo 定义数据集:采用字符模型,因此一个字符为一个样本。每个样本采用one-hot编码。 样本是时间相关的,分别实现序列的随机采样和序列的顺序划分 标签Y与X同形状,但时间超前1 准备数据:一次梯度更新使用的数据形状为:(时间步,Batch,类别数) 实现基本循环神经网络模型 循环单元为nn.RNN或GRU 输出层的全连接使用RNN所有时间步的输出 隐状态初始值为0 测试前向传播 如果采用顺序划分,需梯度截断 训练:损失函数为平均交叉熵 预测:给定一个前缀,进行单步预测和K步预测
05-26
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值