二次测试

package com.example.kkk;

import android.content.Context;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.ImageView;

import com.bumptech.glide.Glide;
import com.youth.banner.Banner;
import com.youth.banner.BannerConfig;
import com.youth.banner.listener.OnBannerListener;
import com.youth.banner.loader.ImageLoader;

import java.util.ArrayList;

public class MainActivity extends AppCompatActivity {

private Banner banner;
private ArrayList<String> list;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Banner banner= (Banner) findViewById(R.id.banner);
list = new ArrayList<String>();
list.add("http://i04.pictn.sogoucdn.com/6a51a4ada9b2139a");
list.add("http://i03.pictn.sogoucdn.com/2fde20c249375b1f");
list.add("http://i04.pictn.sogoucdn.com/d9a9ca57baea06ab");
list.add("http://i02.pic.sogou.com/d784c2ffae96b111");

banner.setDelayTime(2000);
banner.setBannerStyle(BannerConfig.CIRCLE_INDICATOR);
banner.setImages(list);
banner.setImageLoader(new LunBo());
banner.start();

banner.setOnBannerListener(new OnBannerListener() {
@Override
public void OnBannerClick(int position) {
if (position==list.size()-1){
Intent intent =new Intent(MainActivity.this,SecondActivity.class);
startActivity(intent);

}
}
});
}
class LunBo extends ImageLoader{

@Override
public void displayImage(Context context, Object path, ImageView imageView) {
Glide.with(context).load(path).into(imageView);

}
}

}

SecondActivity~~~~~~~~~~

package com.example.kkk;

import android.content.DialogInterface;
import android.content.Intent;
import android.os.AsyncTask;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v7.app.AlertDialog;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.view.ViewGroup;
import android.widget.AdapterView;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.TextView;

import com.google.gson.Gson;
import com.limxing.xlistview.view.XListView;
import com.nostra13.universalimageloader.core.DisplayImageOptions;
import com.nostra13.universalimageloader.core.ImageLoader;
import com.nostra13.universalimageloader.core.display.CircleBitmapDisplayer;

import java.io.InputStream;
import java.io.OutputStream;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.List;

/**
* Created by hp on 2017/8/24.
*/

public class SecondActivity extends AppCompatActivity implements XListView.IXListViewListener {
private XListView xlv;
private List<Bean.ResultBean.DataBean> data;

private MyAdapter adapter;
private int page=0;
private boolean b;
private SqlUtils utils;
private boolean a;

@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.second_layout);
//找到 xlistview
xlv= (XListView) findViewById(R.id.xlv);
xlv.setXListViewListener(this);
xlv.setPullLoadEnable(true);
//new出数据库工具类
utils = new SqlUtils(SecondActivity.this);
// new出 判断网络 类
a = new PDutils().PanDuan(SecondActivity.this);
if (!a){
AlertDialog.Builder builder=new AlertDialog.Builder(SecondActivity.this);
builder.setMessage("没有网络,请设置");
builder.setNegativeButton("取消",null);
builder.setPositiveButton("确定", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
Intent inten=new Intent();
inten.setAction("android.settings.WIRELESS_SETTINGS");
startActivity(inten);
}
}).create().show();

}
//item 监听
xlv.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
if ((i-1)<adapter.getCount()){
Bean.ResultBean.DataBean bean= (Bean.ResultBean.DataBean) adapter.getItem(i-1);
Intent intent=new Intent(SecondActivity.this,ChereActivity.class);
intent.putExtra("tupian",bean.getAlbums().get(0));
intent.putExtra("wenzi",bean.getImtro());
startActivity(intent);
}

}
});
//加载 数据
fF("http://apis.juhe.cn/cook/query.php");

}
//异步
private void fF(final String s) {
new AsyncTask<String,Void,String>(){
@Override
protected void onPostExecute(String s) {
super.onPostExecute(s);
if (a) {
if (s != null) {
utils.add(s);
Gson gson = new Gson();
Bean bean = gson.fromJson(s, Bean.class);
data = bean.getResult().getData();
if (adapter == null) {
adapter = new MyAdapter(data);
xlv.setAdapter(adapter);
} else {
adapter.TianJia(data, b);
adapter.notifyDataSetChanged();
}
}
}else {
String czl=utils.cz();
Gson gson = new Gson();
Bean bean = gson.fromJson(czl, Bean.class);
data = bean.getResult().getData();
if (adapter == null) {
adapter = new MyAdapter(data);
xlv.setAdapter(adapter);
} else {
adapter.TianJia(data, b);
adapter.notifyDataSetChanged();
}
}
}

@Override
protected String doInBackground(String... strings) {
String sting=strings[0];
try {
URL url=new URL(sting);
HttpURLConnection connect= (HttpURLConnection) url.openConnection();
connect.setRequestMethod("POST");
connect.setConnectTimeout(5000);
connect.setReadTimeout(5000);

OutputStream os=connect.getOutputStream();
os.write(("key=353369906bcb73c8ee9f0314da13cba4&menu=红烧肉&rn="+page+"&pn=30").getBytes());

int code=connect.getResponseCode();
if (code==HttpURLConnection.HTTP_OK){
InputStream is=connect.getInputStream();
String jx=new JieXi().JX(is);
return jx;
}
} catch (Exception e) {
e.printStackTrace();
}

return null;

}
}.execute(s);
}
// 下滑
@Override
public void onRefresh() {
++page;
fF("http://apis.juhe.cn/cook/query.php");
b=true;
xlv.stopRefresh(true);
}
//上啦
@Override
public void onLoadMore() {
++page;
fF("http://apis.juhe.cn/cook/query.php");
b=false;
xlv.stopLoadMore();
}
//适配器
class MyAdapter extends BaseAdapter{
public List<Bean.ResultBean.DataBean> list;
private DisplayImageOptions build;
public MyAdapter(List<Bean.ResultBean.DataBean> list) {
this.list = list;
build = new DisplayImageOptions.Builder().cacheInMemory(true).cacheOnDisk(true)
.displayer(new CircleBitmapDisplayer())
.build();

}
//上啦下滑添加数据
public void TianJia (List<Bean.ResultBean.DataBean> list1 ,boolean c){
for (Bean.ResultBean.DataBean brb:list1) {
if (c){
list.add(0,brb);
}else {
list.add(brb);
}
}
}

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

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

@Override
public long getItemId(int i) {
return i;
}
// 多条目类型
@Override
public int getViewTypeCount() {
return 3;
}
//多条目加载
@Override
public int getItemViewType(int position) {
if (position%3==0){
return 0;
}else if (position%3==1){
return 1;
}else if (position%3==2){
return 2;
}
return 3;
}

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

int type =getItemViewType(i);
switch (type){
case 0:
ViewHolder holder;
if (view==null){
holder=new ViewHolder();
view=View.inflate(SecondActivity.this,R.layout.item1,null);
holder.tv= (TextView) view.findViewById(R.id.tv);
holder.img= (ImageView) view.findViewById(R.id.img);
view.setTag(holder);
}else {
holder= (ViewHolder) view.getTag();
}
holder.tv.setText(list.get(i).getImtro());
ImageLoader.getInstance().displayImage(list.get(i).getAlbums().get(0),holder.img,build);
break;

case 1:
ViewHolder1 holder1;
if (view==null){
holder1=new ViewHolder1();
view=View.inflate(SecondActivity.this,R.layout.item2,null);
holder1.tv2= (TextView) view.findViewById(R.id.tv);
holder1.img2= (ImageView) view.findViewById(R.id.img);
view.setTag(holder1);
}else {
holder1= (ViewHolder1) view.getTag();
}
holder1.tv2.setText(list.get(i).getImtro());
ImageLoader.getInstance().displayImage(list.get(i).getAlbums().get(0),holder1.img2,build);

break;

case 2:
ViewHolder3 holder3;
if (view==null){
holder3 = new ViewHolder3();
view=View.inflate(SecondActivity.this,R.layout.item3,null);
holder3.tv3= (TextView) view.findViewById(R.id.tv);
holder3.img3= (ImageView) view.findViewById(R.id.img);
view.setTag(holder3);

}else {
holder3= (ViewHolder3) view.getTag();
}
holder3.tv3.setText(list.get(i).getImtro());
ImageLoader.getInstance().displayImage(list.get(i).getAlbums().get(0),holder3.img3,build);
break;
}


return view;
}
}
class ViewHolder{
ImageView img;
TextView tv;
}
class ViewHolder1{
ImageView img2;
TextView tv2;
}
class ViewHolder3{
ImageView img3;
TextView tv3;
}

}

chereActivity~~~~
package com.example.kkk;

import android.content.Intent;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v7.app.AppCompatActivity;
import android.widget.ImageView;
import android.widget.TextView;

import com.nostra13.universalimageloader.core.ImageLoader;



public class ChereActivity extends AppCompatActivity{
private ImageView Chereimg;
private TextView Cheretv;
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.chere_layout);

Chereimg= (ImageView) findViewById(R.id.chere_img);
Cheretv= (TextView) findViewById(R.id.chere_tv);
Intent intent=getIntent();

String imgs=intent.getStringExtra("tupian");
String tvs=intent.getStringExtra("wenzi");

Cheretv.setText(tvs);
ImageLoader.getInstance().displayImage(imgs,Chereimg);


}
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值