安卓小日记练习(6)listview点击后的界面布局和数据传递的完善
来源:互联网 发布:清华大学软件学院分数 编辑:程序博客网 时间:2024/05/18 21:07
本来(5)就想做这个的,结果为啥去做了下栏的年份和月份菜单呢?答案就在这里了,我们通过点击进入这个新的活动,是需要信息的,其中就包括年份和月份信息的,我们先通过主界面下方的年份和月份菜单随便选一个。然后随便点一个item,发现星期,年份,月份,月中的哪一天,和日记的具体内容,全部都传过去展示出来了。
这个界面设计就比较简单了(虽然设计的还是丑,过两天再来修缮),主要是信息的传递,需要传递的地方,都用textview,然后再对应活动中动态的加载就可以了。
布局:
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <LinearLayout android:layout_marginTop="12dip" android:id="@+id/showup" android:layout_width="match_parent" android:layout_height="40dip" android:orientation="horizontal" > <View android:layout_width="0dp" android:layout_weight="2.5" android:layout_height="0dp" /> <TextView android:id="@+id/show_week" android:layout_height="20dip" android:layout_width="wrap_content" android:layout_weight="1" android:textStyle="bold" /> <ImageView android:layout_height="15dip" android:layout_width="wrap_content" android:layout_weight="1" android:src="@drawable/divi2" /> <TextView android:id="@+id/show_month" android:layout_height="20dip" android:layout_width="wrap_content" android:layout_weight="1" android:textStyle="bold" /> <View android:layout_width="0dp" android:layout_weight="0.5" android:layout_height="0dp" /> <TextView android:id="@+id/show_day" android:layout_height="20dip" android:layout_width="wrap_content" android:layout_weight="1" android:textStyle="bold" /> <ImageView android:layout_height="15dip" android:layout_width="wrap_content" android:layout_weight="1" android:src="@drawable/divi2" /> <TextView android:id="@+id/show_year" android:layout_height="20dip" android:layout_width="wrap_content" android:layout_weight="1" android:textStyle="bold" /> <View android:layout_width="0dp" android:layout_weight="3" android:layout_height="0dp" /> </LinearLayout> <ImageView android:layout_height="5dip" android:gravity="center" android:layout_width="wrap_content" android:src="@drawable/longlong" /> <TextView android:layout_marginTop="5dip" android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/text1" /> </LinearLayout>
活动中的代码:
package com.example.littled;import android.app.Activity;import android.content.Intent;import android.os.Bundle;import android.widget.TextView;public class ShowActivity extends Activity {@Overrideprotected void onCreate(Bundle savedInstanceState){super.onCreate(savedInstanceState);setContentView(R.layout.activity_show);Intent intent = getIntent();String w = intent.getStringExtra("week");if(w == "MON")w = "MONDAY";else if(w == "TUE")w = "TUESDAY";else if(w == "WED")w = "WEDNESDAY";else if(w == "THR")w = "THRUTHDAY";else if(w == "FRI")w = "FRIDAY";else if(w == "SAT")w = "SATURDAY";else if(w == "SUN")w = "SUNDAY";TextView tv1 = (TextView)findViewById(R.id.show_week);tv1.setText(w);String m = intent.getStringExtra("month");TextView tv2 = (TextView)findViewById(R.id.show_month);tv2.setText(m);String da = intent.getStringExtra("day");TextView tv3 = (TextView)findViewById(R.id.show_day);tv3.setText(da);String y = intent.getStringExtra("year");TextView tv4 = (TextView)findViewById(R.id.show_year);tv4.setText(y);String d = intent.getStringExtra("detail");TextView tv5=(TextView)findViewById(R.id.text1); tv5.setText(d);}}
最后再来看看主界面方面:
package com.example.littled;import java.util.ArrayList;import java.util.List;import android.app.Activity;import android.content.Intent;import android.os.Bundle;import android.view.Menu;import android.view.MenuItem;import android.widget.AdapterView;import android.widget.ArrayAdapter;import android.widget.ImageView;import android.widget.ListView;import android.widget.AdapterView;import android.widget.PopupMenu;import android.widget.TextView;import android.widget.Toast;import android.view.View;public class MainActivity extends Activity {private String monthmenu;private String yearmenu;private ArrayList<Object> daylist = new ArrayList<Object>();private ArrayList<Object> pointlist = new ArrayList<Object>();private ArrayList<Object> data = new ArrayList<Object>();TextView tv1;TextView tv2; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); tv1=(TextView)findViewById(R.id.text_view1); monthmenu = "August";tv1.setText(monthmenu); tv2=(TextView)findViewById(R.id.text_view2); yearmenu = "2015"; tv2.setText(yearmenu); tv1.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { showPopupMenu1(tv1); } }); tv2.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { showPopupMenu2(tv2); } }); initDays(); DayApater adapter = new DayApater(MainActivity.this,data); ListView listView = (ListView)findViewById(R.id.list_view); listView.setAdapter(adapter); listView.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { Day d = (Day)data.get(position); String sdetail = d.getDetail(); String sday = d.getDay(); String sweek = d.getWeek(); Intent intent = new Intent(MainActivity.this, ShowActivity.class); intent.putExtra("detail", sdetail); intent.putExtra("week",sweek); intent.putExtra("day", sday); intent.putExtra("year",yearmenu); intent.putExtra("month", monthmenu); startActivity(intent); } }); } private void initDays() { Day day1 = new Day("SAT","1","我去超市来着..."); data.add(day1); Day day2 = new Day("SUN","2","今天第一次和智恩吃意大利面。"); data.add(day2); Day day3 = new Day("MON","3","路两边的树吸走了汽车尾气"); data.add(day3); Day day4 = new Day("TUE","4","现在每天都能吃到猪排饭了,好开心啊"); data.add(day4); Point point = new Point(R.drawable.blackpoint); data.add(point); data.add(point); Day day5 = new Day("FRI","7","你,黑咖啡,芝士年糕,羽毛球,成功"); data.add(day5); Day day6 = new Day("SAT","8","DGA 7 最爱"); data.add(day6); } private void showPopupMenu1(View view) { PopupMenu popupMenu = new PopupMenu(this, view); popupMenu.getMenuInflater().inflate(R.menu.text1, popupMenu.getMenu()); popupMenu.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() { @Override public boolean onMenuItemClick(MenuItem item) { monthmenu = (String) item.getTitle(); tv1.setText(monthmenu); return false; } }); popupMenu.show(); } private void showPopupMenu2(View view) { PopupMenu popupMenu = new PopupMenu(this, view); popupMenu.getMenuInflater().inflate(R.menu.text2, popupMenu.getMenu()); popupMenu.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() { @Override public boolean onMenuItemClick(MenuItem item) { yearmenu = (String) item.getTitle(); tv2.setText(yearmenu); return false; } }); popupMenu.show(); }}
0 0
- 安卓小日记练习(6)listview点击后的界面布局和数据传递的完善
- 安卓小日记练习(8)listview的另一个item点击事件的界面和数据保存
- 安卓小日记练习(7)回退到主界面和listview的另一个item的点击事件(1)
- 安卓小日记练习(2)从listview到主界面整体布局
- 对于点击listview item的数据传递
- 安卓小日记练习(11)listview的动态更新和android的字符串处理
- 安卓小日记练习(3)listview的多个item
- 聊天界面的制作(二)——发送消息后ListView左右布局显示
- 在ListView上修改内容后的界面刷新和数据保存
- ListView的Item不可点击和Item布局重复问题
- ListView中添加Button后,Button的点击事件和ListView的点击事件冲突
- ListView中添加Button后,Button的点击事件和ListView的点击事件冲突
- ListView中添加Button后,Button的点击事件和ListView的点击事件冲突
- ListView中添加Button后,Button的点击事件和ListView的点击事件冲突
- 安卓小日记练习(4)其中一个item的点击事件(1)
- 安卓小日记练习(10)listview之item的动态改变
- 登陆界面的完善
- 基于地图的短信追踪小练习(8)地图覆盖物点击事件与活动间数据的传递
- 神经网络入门资料
- 蓄水池抽样-Random Pick Index
- C++字符输入
- mac下安装chromedriver
- TCP/IP协议 三次握手与四次挥手
- 安卓小日记练习(6)listview点击后的界面布局和数据传递的完善
- 不忘初心,回到本源
- 打开EventBus3.0的正确姿势
- 2 Activity (修改成功)
- 安卓更新UI的几种方法
- Linux系统调用和库函数调用的区别
- HttpServletRequest对象
- 1、TCP连接
- ctcall 专注邮件应用发送