Skip to content

Commit ed5f82d

Browse files
committed
hzuapps#6 hzuapps#30 第六次实验
1 parent 2092bda commit ed5f82d

7 files changed

+219
-21
lines changed

AndroidLabs/app/src/main/java/edu/hzuapps/androidlabs/homeworks/net1414080903240/Net1414080903240Activity.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ public void onClick(View v) {
2828
btn_send2.setOnClickListener(new View.OnClickListener() {
2929
@Override
3030
public void onClick(View v) {
31-
Intent intent1 = new Intent(Net1414080903240Activity.this,Net1414080903240_OrderRecord.class);
31+
Intent intent1 = new Intent(Net1414080903240Activity.this,Net1414080903240_chose.class);
3232
startActivity(intent1);
3333
}
3434
});
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,42 @@
11
package edu.hzuapps.androidlabs.homeworks.net1414080903240;
22

3+
import android.content.SharedPreferences;
34
import android.support.v7.app.AppCompatActivity;
45
import android.os.Bundle;
6+
import android.view.View;
7+
import android.view.ViewGroup;
8+
import android.widget.ArrayAdapter;
9+
import android.widget.BaseAdapter;
10+
import android.widget.ListView;
11+
import android.widget.SimpleAdapter;
12+
import android.widget.TextView;
13+
14+
import java.util.ArrayList;
15+
import java.util.HashMap;
16+
import java.util.List;
517

6-
public class Net1414080903240_AccountDetail extends AppCompatActivity {
718

19+
public class Net1414080903240_AccountDetail extends AppCompatActivity {
20+
private ListView mListView;
821
@Override
922
protected void onCreate(Bundle savedInstanceState) {
1023
super.onCreate(savedInstanceState);
1124
setContentView(R.layout.accountdetail_1414080903240);
25+
SharedPreferences sp=getSharedPreferences("zhangmu",MODE_PRIVATE);
26+
int sum0=sp.getInt("count",0);
27+
ListView lv = (ListView) findViewById(R.id.lv);
28+
ArrayList<HashMap<String, Object>> listItem = new ArrayList<HashMap<String,Object>>();
29+
for(int i=1;i<=sum0;i++)
30+
{
31+
String a=sp.getString("countnum"+i,"0");
32+
String b=sp.getString("countclass"+i,"null");
33+
HashMap<String, Object> map = new HashMap<String, Object>();
34+
map.put("tt_value",a);
35+
map.put("project_value",b);
36+
listItem.add(map);
37+
}
38+
SimpleAdapter mSimpleAdapter = new SimpleAdapter(this,listItem,R.layout.list_item, new String[] {"tt_value", "project_value"},new int[]{R.id.tt_value,R.id.project_value});
39+
lv.setAdapter(mSimpleAdapter);
1240
}
13-
}
41+
42+
}

AndroidLabs/app/src/main/java/edu/hzuapps/androidlabs/homeworks/net1414080903240/Net1414080903240_NewAccount.java

+9-2
Original file line numberDiff line numberDiff line change
@@ -55,12 +55,19 @@ public void onClick(View v) {
5555
int a = Integer.parseInt(str);
5656
int value=sp.getInt(str2,0);
5757
int value2=sp.getInt("sum",0);
58+
int count=sp.getInt("count",0);
59+
int count2=count+1;
60+
String countnum="countnum"+count2;
61+
String countclass="countclass"+count2;
5862
int sum=a+value2;
5963
int addvalue=a+value;
6064
al.putInt("sum",sum);
6165
al.putInt(str2,addvalue);
62-
//al.putInt("food",0);
63-
//al.putInt("sum",0);
66+
al.putInt("count",count+1);
67+
al.putString(countnum,str);
68+
al.putString(countclass,str2);
69+
//al.putInt("count",0);
70+
6471
al.commit();
6572
intent.putExtra("value",str);
6673
intent.putExtra("spinner1",spinner1.getSelectedItem().toString().trim());
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,135 @@
1+
package edu.hzuapps.androidlabs.homeworks.net1414080903240;
2+
3+
import android.content.SharedPreferences;
4+
import android.content.pm.ProviderInfo;
5+
import android.graphics.Bitmap;
6+
import android.graphics.BitmapFactory;
7+
import android.os.Message;
8+
import android.support.v7.app.AppCompatActivity;
9+
import android.os.Bundle;
10+
11+
import android.os.Handler;
12+
import android.util.Xml;
13+
import android.widget.ListView;
14+
import android.widget.SimpleAdapter;
15+
16+
import org.xmlpull.v1.XmlPullParser;
17+
18+
import java.io.InputStream;
19+
import java.net.HttpURLConnection;
20+
import java.net.URL;
21+
import java.util.ArrayList;
22+
import java.util.HashMap;
23+
import java.util.List;
24+
25+
import java.util.logging.LogRecord;
26+
27+
public class Net1414080903240_OldAccount extends AppCompatActivity {
28+
private ListView mListView;
29+
private String path="https://raw.githubusercontent.com/mokulai/android-labs-2017/master/AndroidLabs/app/src/main/java/edu/hzuapps/androidlabs/homeworks/net1414080903240/detailvalues.xml";
30+
Handler mHandler=new Handler(){
31+
public void handleMessage(Message msg) {
32+
if(msg.what==1){
33+
try {
34+
List<order> info=(List<order>) msg.obj;
35+
initData(info);
36+
}catch (Exception e) {
37+
e.printStackTrace();
38+
}
39+
}else{
40+
try {
41+
List<order> info=getAccountInfos(getResources().getAssets().open("detailvalues.xml"));
42+
initData(info);
43+
}catch (Exception e) {
44+
e.printStackTrace();
45+
}
46+
}
47+
48+
}
49+
};
50+
protected void onCreate(Bundle savedInstanceState) {
51+
super.onCreate(savedInstanceState);
52+
setContentView(R.layout.old_account);
53+
getXml();
54+
}
55+
protected void initData(List<order> info) {
56+
ListView lv = (ListView) findViewById(R.id.lv);
57+
try {
58+
ArrayList<HashMap<String, Object>> listItem = new ArrayList<HashMap<String,Object>>();
59+
for(order infos:info)
60+
{
61+
HashMap<String, Object> map = new HashMap<String, Object>();
62+
map.put("tt_value",infos.getClassname());
63+
map.put("project_value",infos.getValue());
64+
listItem.add(map);
65+
}
66+
SimpleAdapter mSimpleAdapter = new SimpleAdapter(this,listItem,R.layout.list_item, new String[] {"tt_value", "project_value"},new int[]{R.id.tt_value,R.id.project_value});
67+
lv.setAdapter(mSimpleAdapter);
68+
69+
} catch (Exception e) {
70+
e.printStackTrace();
71+
}
72+
}
73+
public static List<order> getAccountInfos( InputStream is) throws Exception {
74+
XmlPullParser parser = Xml.newPullParser();
75+
parser.setInput(is, "utf-8");
76+
List<order> infos = null;
77+
order info = null;
78+
int type = parser.getEventType();
79+
while (type != XmlPullParser.END_DOCUMENT) {
80+
switch (type) {
81+
case XmlPullParser.START_TAG:
82+
if ("detail".equals(parser.getName())) {
83+
infos = new ArrayList<order>();
84+
} else if ("account".equals(parser.getName())) {
85+
info = new order();
86+
String id = parser.getAttributeValue(0);
87+
info.setId(Integer.parseInt(id));
88+
} else if ("classname".equals(parser.getName())) {
89+
String cla = parser.nextText();
90+
info.setClassname(cla);
91+
} else if ("value".equals(parser.getName())) {
92+
String value = parser.nextText();
93+
info.setValue(value);
94+
}
95+
break;
96+
case XmlPullParser.END_TAG:
97+
if ("account".equals(parser.getName())) {
98+
infos.add(info);
99+
info = null;
100+
}
101+
break;
102+
103+
}
104+
type = parser.next();
105+
}
106+
return infos;
107+
}
108+
109+
public void getXml(){
110+
new Thread(new Runnable() {
111+
private HttpURLConnection conn;
112+
public void run() {
113+
try {
114+
URL url=new URL(path);
115+
conn = (HttpURLConnection) url.openConnection();
116+
conn.setReadTimeout(5000);
117+
conn.setRequestMethod("GET");
118+
if (conn.getResponseCode()==200) {
119+
InputStream inputStream=conn.getInputStream();
120+
List<order> listNews=getAccountInfos(inputStream);
121+
if(listNews.size()>0) {
122+
Message msg = new Message();
123+
msg.obj = listNews;
124+
msg.what = 1;
125+
mHandler.sendMessage(msg);
126+
}
127+
}
128+
} catch (Exception e) {
129+
e.printStackTrace();
130+
}
131+
}
132+
}).start();
133+
}
134+
135+
}

AndroidLabs/app/src/main/java/edu/hzuapps/androidlabs/homeworks/net1414080903240/Net1414080903240_OrderRecord.java

-1
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,6 @@ protected void onCreate(Bundle savedInstanceState) {
3939
float dress_a=(float)dress/sum0*100;
4040
float gift_a=(float)gift/sum0*100;
4141

42-
4342
String sum=String.valueOf(sum0);
4443
String cheer_value=String.valueOf(cheer);
4544
String food_value=String.valueOf(food);
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
package edu.hzuapps.androidlabs.homeworks.net1414080903240;
2+
3+
import android.content.Intent;
4+
import android.support.v7.app.AppCompatActivity;
5+
import android.os.Bundle;
6+
import android.view.View;
7+
import android.widget.Button;
8+
9+
public class Net1414080903240_chose extends AppCompatActivity {
10+
11+
private Button btn_send1;
12+
private Button btn_send2;
13+
14+
protected void onCreate(Bundle savedInstanceState) {
15+
super.onCreate(savedInstanceState);
16+
setContentView(R.layout.chose_1414080903240);
17+
18+
19+
btn_send1 = (Button) findViewById(R.id.button1);
20+
btn_send2 = (Button) findViewById(R.id.button2);
21+
btn_send1.setOnClickListener(new View.OnClickListener() {
22+
@Override
23+
public void onClick(View v) {
24+
Intent intent = new Intent(Net1414080903240_chose.this, Net1414080903240_AccountDetail.class);
25+
startActivity(intent);
26+
}
27+
});
28+
29+
btn_send2.setOnClickListener(new View.OnClickListener() {
30+
@Override
31+
public void onClick(View v) {
32+
Intent intent1 = new Intent(Net1414080903240_chose.this, Net1414080903240_OldAccount.class);
33+
startActivity(intent1);
34+
}
35+
});
36+
}}

AndroidLabs/app/src/main/java/edu/hzuapps/androidlabs/homeworks/net1414080903240/order.java

+7-15
Original file line numberDiff line numberDiff line change
@@ -5,25 +5,17 @@
55
*/
66

77
public class order {
8+
private int id;
89
private String value;
9-
private String data;
10-
private String remark;
11-
private String project;
10+
private String classname;
1211

12+
public String getId() { return value; }
13+
public void setId(int id) { this.id =id;}
1314

14-
public void order(String a,String b,String c,String d){
15-
value=a;
16-
data=c;
17-
remark=d;
18-
project=b;
19-
}
2015
public String getValue() { return value; }
2116
public void setValue(String a) { this.value =a;}
22-
public String getData() { return data; }
23-
public void setData(String a) { this.data =a;}
24-
public String getRemark() { return remark; }
25-
public void setRemark(String a) { this.remark =a;}
26-
public String getProject() { return project; }
27-
public void setProject(String a) { this.project =a;}
17+
public String getClassname() { return classname; }
18+
public void setClassname(String a) { this.classname =a;}
19+
2820

2921
}

0 commit comments

Comments
 (0)