MultiUploadActivity.java
3.26 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
package com.cnlive.demo.rdupload;
import android.app.Activity;
import android.content.Context;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.Button;
import android.widget.ListView;
import android.widget.TextView;
import com.ksyun.ks3.services.Ks3Client;
import java.io.File;
import java.util.ArrayList;
import java.util.List;
public class MultiUploadActivity extends Activity {
private List<MultiUploader> fileInfos;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_multi_upload);
getFileInfo();
ListView listView = (ListView) findViewById(R.id.listView);
listView.setAdapter(new ListViewAdapter(fileInfos));
}
private void getFileInfo(){
fileInfos = new ArrayList<MultiUploader>();
Ks3ClientFactory ks3ClientFactory = new Ks3ClientFactory();
Ks3Client client = ks3ClientFactory.getDefaultClient(MultiUploadActivity.this);
fileInfos.add(new MultiUploader(client, Constants.TEST_MULTIUPLOAD_BUCKET, "11.txt",
new File(Constants.TEST_MULTIUPLOAD_FILE)));//, "bb20153e438047b3bc3212f37e25fd9c"));
fileInfos.add(new MultiUploader(client, Constants.TEST_MULTIUPLOAD_BUCKET, "11.txt",
new File(Constants.TEST_MULTIUPLOAD_FILE), "8b67c9679fae436ba754b4bafc29ca37"));
}
public class ListViewAdapter extends BaseAdapter {
View[] itemViews;
public ListViewAdapter(List<MultiUploader> list) {
itemViews = new View[list.size()];
for(int i=0;i<list.size();i++){
MultiUploader uploader = list.get(i);
itemViews[i]=makeItemView(uploader.getKey(), uploader);
}
}
private View makeItemView(String key, final MultiUploader uploader) {
LayoutInflater inflater = (LayoutInflater) MultiUploadActivity.this
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
// 使用View的对象itemView与R.layout.item关联
View itemView = inflater.inflate(R.layout.multiupload_item, null);
TextView fileNameView = (TextView) itemView.findViewById(R.id.file_name);
fileNameView.setText(key);
Button btn = (Button) itemView.findViewById(R.id.uploadBtn);
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if(uploader.getUploadId()==null)
uploader.upload();
else
uploader.reUpload();
}
});
return itemView;
}
@Override
public int getCount() {
return itemViews.length;
}
@Override
public Object getItem(int i) {
return itemViews[i];
}
@Override
public long getItemId(int i) {
return i;
}
@Override
public View getView(int i, View view, ViewGroup viewGroup) {
if (view == null)
return itemViews[i];
return view;
}
}
}