您的位置:首页 > 其它

二级列表

2016-05-23 08:22 141 查看
package com.example.cartoon;

import java.io.IOException;

import java.io.UnsupportedEncodingException;

import java.util.ArrayList;

import java.util.List;

import org.apache.http.HttpEntity;

import org.apache.http.HttpResponse;

import org.apache.http.NameValuePair;

import org.apache.http.client.ClientProtocolException;

import org.apache.http.client.HttpClient;

import org.apache.http.client.entity.UrlEncodedFormEntity;

import org.apache.http.client.methods.HttpPost;

import org.apache.http.impl.client.DefaultHttpClient;

import org.apache.http.message.BasicNameValuePair;

import org.apache.http.util.EntityUtils;

import cartoon.Book;

import com.google.gson.Gson;

import com.loopj.android.image.SmartImageView;

import Zhangjie.Bbean;

import Zhangjie.Chap;

import Zhangjie.Result;

import android.os.Bundle;

import android.app.Activity;

import android.content.Intent;

import android.database.DataSetObserver;

import android.database.sqlite.SQLiteDatabase;

import android.view.LayoutInflater;

import android.view.View;

import android.view.View.OnClickListener;

import android.view.ViewGroup;

import android.widget.Button;

import android.widget.ExpandableListAdapter;

import android.widget.ExpandableListView;

import android.widget.ExpandableListView.OnChildClickListener;

import android.widget.ImageView;

import android.widget.TextView;

import android.widget.Toast;

public class BookActivity extends Activity {

private Book bb;

private SmartImageView ss;

private TextView tt;

private ExpandableListView el;

private ExpandableListView ex;

private ArrayList<String> group;

private ArrayList<List<String>> child;

/*String key="a7682be6ad9e929a12d282fccf76c085";*/

String key="ad92d72a470d3894852f920cbe99b72b";

String path="http://japi.juhe.cn/comic/chapter";

private List<Chap> chapterList;

private TextView tg;

private TextView tr;

private SQLiteDatabase db;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_book);

Intent in = getIntent();

bb =(Book)in.getSerializableExtra("xx");

System.out.println(bb.toString());

ss=(SmartImageView)findViewById(R.id.sm);

tt=(TextView)findViewById(R.id.kk);

tg=(TextView)findViewById(R.id.aaa);

tr=(TextView)findViewById(R.id.insert);

tg.setText(bb.des);

Mysql ms=new Mysql(this);

db = ms.getReadableDatabase();

tr.setOnClickListener(new OnClickListener() {

@Override

public void onClick(View arg0) {

// TODO Auto-generated method stub

db.execSQL("insert into cart (des,url,name)values(?,?,?)",new String[]{bb.des,bb.coverImg,bb.name});

Toast.makeText(BookActivity.this, "收藏成功", 1).show();

}

});

ss.setImageUrl(bb.coverImg);

tt.setText(bb.name);

el=(ExpandableListView)findViewById(R.id.el);

new Thread()

{

public void run()

{

http();

runOnUiThread(new Runnable() {

@Override

public void run() {

// TODO Auto-generated method stub

el.setAdapter(new MyAdpter());

}

});

};

}.start();

//用子列表的点击事件必须将二级列表的适配器里面的isChildSelectable方法的返回值设为true

el.setOnChildClickListener(new OnChildClickListener() {

@Override

public boolean onChildClick(ExpandableListView arg0, View arg1, int arg2,

int arg3, long arg4) {

// TODO Auto-generated method stub

Intent in=new Intent(BookActivity.this,NNActivity.class);

in.putExtra("zz", child.get(arg2).get(arg3));

in.putExtra("cc",bb.name);

in.putExtra("ss", chapterList.get(arg3));

startActivity(in);

System.out.println("aa======="+bb.name);

System.out.println(child.get(arg2).get(arg3));

System.out.println(chapterList.get(arg3).id);

return false;

}

});

}

//二级列表的数据

public void getData()

{

group=new ArrayList<String>();

group.add("目录");

System.out.println(group);

child=new ArrayList<List<String>>();

for (Chap string : chapterList) {

List<String> li=new ArrayList<String>();

li.add(string.name);

child.add(li);

}

System.out.println("============="+child);

}

public void http()

{

HttpClient hc=new DefaultHttpClient();

HttpPost hp=new HttpPost(path);

List<NameValuePair> nv=new ArrayList<NameValuePair>();

nv.add(new BasicNameValuePair("key", key));

nv.add(new BasicNameValuePair("comicName", bb.name));

System.out.println(bb.name);

try {

UrlEncodedFormEntity ue=new UrlEncodedFormEntity(nv,"utf-8");

hp.setEntity(ue);

HttpResponse execute = hc.execute(hp);

HttpEntity entity = execute.getEntity();

String string = EntityUtils.toString(entity);

System.out.println(string);

Gson g=new Gson();

Bbean bean = g.fromJson(string, Bbean.class);

Result result = bean.result;

chapterList = result.chapterList;

System.out.println(chapterList);

getData();

} catch (UnsupportedEncodingException e) {

// TODO Auto-generated catch block

e.printStackTrace();

} catch (ClientProtocolException e) {

// TODO Auto-generated catch block

e.printStackTrace();

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

class MyAdpter implements ExpandableListAdapter

{

@Override

public Object getChild(int arg0, int arg1) {

// TODO Auto-generated method stub

return child.get(arg0).get(arg1);

}

@Override

public long getChildId(int arg0, int arg1) {

// TODO Auto-generated method stub

return arg1;

}

@Override

public View getChildView(int arg0, int arg1, boolean arg2, View arg3,

ViewGroup arg4) {

// TODO Auto-generated method stub

Handler h;

if(arg3==null)

{

h=new Handler();

arg3=LayoutInflater.from(BookActivity.this).inflate(R.layout.ee, null);

h.im=(ImageView)arg3.findViewById(R.id.xxx);

h.tc=(TextView)arg3.findViewById(R.id.vvv);

arg3.setTag(h);

}

else

{

h=(Handler) arg3.getTag();

}

h.im.setImageResource(R.drawable.zx);

h.tc.setText(child.get(arg0).get(arg1));

return arg3;

}

@Override

public int getChildrenCount(int arg0) {

// TODO Auto-generated method stub

return child.get(arg0).size();

}

@Override

public Object getGroup(int arg0) {

// TODO Auto-generated method stub

return group.get(arg0);

}

@Override

public int getGroupCount() {

// TODO Auto-generated method stub

return group.size();

}

@Override

public long getGroupId(int arg0) {

// TODO Auto-generated method stub

return arg0;

}

@Override

public View getGroupView(int arg0, boolean arg1, View arg2,

ViewGroup arg3) {

// TODO Auto-generated method stub

Handler h;

if(arg2==null)

{

h=new Handler();

arg2=LayoutInflater.from(BookActivity.this).inflate(R.layout.ee, null);

h.im=(ImageView)arg2.findViewById(R.id.xxx);

h.tc=(TextView)arg2.findViewById(R.id.vvv);

arg2.setTag(h);

}

else

{

h=(Handler) arg2.getTag();

}

h.im.setImageResource(R.drawable.as);

h.tc.setText(group.get(arg0));

return arg2;

}

@Override

public boolean hasStableIds() {

// TODO Auto-generated method stub

return false;

}

@Override

public boolean isChildSelectable(int arg0, int arg1) {

// TODO Auto-generated method stub

return true;

}

@Override

public boolean areAllItemsEnabled() {

// TODO Auto-generated method stub

return false;

}

@Override

public long getCombinedChildId(long arg0, long arg1) {

// TODO Auto-generated method stub

return 0;

}

@Override

public long getCombinedGroupId(long arg0) {

// TODO Auto-generated method stub

return 0;

}

@Override

public boolean isEmpty() {

// TODO Auto-generated method stub

return false;

}

@Override

public void onGroupCollapsed(int arg0) {

// TODO Auto-generated method stub

}

@Override

public void onGroupExpanded(int arg0) {

// TODO Auto-generated method stub

}

@Override

public void registerDataSetObserver(DataSetObserver arg0) {

// TODO Auto-generated method stub

}

@Override

public void unregisterDataSetObserver(DataSetObserver arg0) {

// TODO Auto-generated method stub

}

class Handler

{

private ImageView im;

private TextView tc;

}

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: