|
@@ -7,9 +7,12 @@ import android.support.v7.widget.Toolbar;
|
7
|
7
|
import android.util.Log;
|
8
|
8
|
import android.view.Menu;
|
9
|
9
|
import android.view.MenuItem;
|
|
10
|
+import android.view.View;
|
|
11
|
+import android.widget.AdapterView;
|
10
|
12
|
import android.widget.ArrayAdapter;
|
11
|
13
|
import android.widget.ListView;
|
12
|
14
|
import android.widget.SimpleAdapter;
|
|
15
|
+import android.widget.TextView;
|
13
|
16
|
import android.widget.Toast;
|
14
|
17
|
|
15
|
18
|
import java.text.SimpleDateFormat;
|
|
@@ -30,7 +33,9 @@ public class MainActivity extends AppCompatActivity {
|
30
|
33
|
protected void onCreate(Bundle savedInstanceState) {
|
31
|
34
|
super.onCreate(savedInstanceState);
|
32
|
35
|
setContentView(R.layout.activity_main);
|
|
36
|
+ //获取应用栏
|
33
|
37
|
Toolbar toolBar = (Toolbar) findViewById(R.id.toolbar);
|
|
38
|
+ //设置应用栏
|
34
|
39
|
setSupportActionBar(toolBar);
|
35
|
40
|
Log.i("youmap", "MainActivity创建完成");
|
36
|
41
|
|
|
@@ -38,8 +43,68 @@ public class MainActivity extends AppCompatActivity {
|
38
|
43
|
}
|
39
|
44
|
|
40
|
45
|
private void createListView() {
|
|
46
|
+ //获取ListView
|
41
|
47
|
this.listView = (ListView) findViewById(R.id.main_listview);
|
42
|
|
- this.listView.setAdapter(new SimpleAdapter(this, getData(), R.layout.home_list, new String[]{"title", "thumbnail", "date"}, new int[]{R.id.home_list_title, R.id.home_list_date, R.id.home_list_desc}));
|
|
48
|
+
|
|
49
|
+ /**
|
|
50
|
+ * <pre>
|
|
51
|
+ * 新建数据适配器。传入:
|
|
52
|
+ * 1: Activity实例,即this对象。
|
|
53
|
+ * 2: 数据内容
|
|
54
|
+ * 3:Item的布局
|
|
55
|
+ * 4:数据里对应布局的Key值
|
|
56
|
+ * 5:布局与数据对应的组件Id
|
|
57
|
+ * </pre>
|
|
58
|
+ *
|
|
59
|
+ */
|
|
60
|
+ SimpleAdapter adapter = new SimpleAdapter(this, getData(), R.layout.home_list, new String[]{"title", "thumbnail", "date"}, new int[]{R.id.home_list_title, R.id.home_list_date, R.id.home_list_desc});
|
|
61
|
+
|
|
62
|
+ /**
|
|
63
|
+ * 通过setAdapter方法,绑定数据和布局。
|
|
64
|
+ */
|
|
65
|
+ this.listView.setAdapter(adapter);
|
|
66
|
+
|
|
67
|
+ /**
|
|
68
|
+ * 绑定Item的click方法。
|
|
69
|
+ */
|
|
70
|
+ this.listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
|
|
71
|
+ /**
|
|
72
|
+ *
|
|
73
|
+ * @param parent
|
|
74
|
+ * @param view item控件,即整个Item的布局。
|
|
75
|
+ * @param position
|
|
76
|
+ * @param id
|
|
77
|
+ */
|
|
78
|
+ @Override
|
|
79
|
+ public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
|
|
80
|
+ //在传入的Item布局里获取到需要的控件。
|
|
81
|
+ TextView txt = (TextView) view.findViewById(R.id.home_list_title);
|
|
82
|
+ Toast.makeText(MainActivity.this, txt.getText(), Toast.LENGTH_SHORT).show();
|
|
83
|
+
|
|
84
|
+ Intent intent = new Intent(MainActivity.this, MessageActivity.class);
|
|
85
|
+
|
|
86
|
+ startActivity(intent);
|
|
87
|
+ }
|
|
88
|
+ });
|
|
89
|
+
|
|
90
|
+ /**
|
|
91
|
+ * 绑定Item的长按方法。
|
|
92
|
+ */
|
|
93
|
+ listView.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() {
|
|
94
|
+ @Override
|
|
95
|
+ public boolean onItemLongClick(AdapterView<?> parent, View view, int position, long id) {
|
|
96
|
+ Intent intent = new Intent();
|
|
97
|
+ intent.setAction(Intent.ACTION_SEND);
|
|
98
|
+ intent.putExtra(Intent.EXTRA_TEXT, "110");
|
|
99
|
+ intent.setType("text/plain");
|
|
100
|
+
|
|
101
|
+ if (intent.resolveActivity(getPackageManager()) != null) {
|
|
102
|
+ startActivity(intent);
|
|
103
|
+ }
|
|
104
|
+
|
|
105
|
+ return true;
|
|
106
|
+ }
|
|
107
|
+ });
|
43
|
108
|
}
|
44
|
109
|
|
45
|
110
|
private List<HashMap<String, Object>> getData() {
|
|
@@ -48,7 +113,7 @@ public class MainActivity extends AppCompatActivity {
|
48
|
113
|
HashMap<String, String> map = new HashMap<>();
|
49
|
114
|
map.put("title", "标题 " + i);
|
50
|
115
|
map.put("thumbnail", "图片 " + i);
|
51
|
|
- map.put("date", sdf.format(new Date()));
|
|
116
|
+ //map.put("date", sdf.format(new Date()));
|
52
|
117
|
|
53
|
118
|
list.add(map);
|
54
|
119
|
}
|