扬州旅游app(三)
来源:互联网 发布:豆荚网络加速器破解 编辑:程序博客网 时间:2024/04/28 06:16
转载请注明出处,谢谢。
本文是扬州旅游app的第三篇。
在上一篇中,我们利用JSON解析完成了在应用中嵌入天气预报功能。接下来,我们来完成扬州美食模块的功能。
先上图。
在UI设计方面,主框架是线性布局,标题部分是套在相对布局里的,因为我们要在屏幕左上方写一个后退按钮,利用相对布局比较容易完成。下面的条目显示,我们利用ListView来做。
下面给出代码:
<?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" > <RelativeLayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="#99cc33" > <ImageView android:layout_width="20dip" android:layout_height="20dip" android:layout_alignParentLeft="true" android:layout_centerVertical="true" android:clickable="true" android:onClick="pre" android:src="@drawable/previous" /> <TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:gravity="center_horizontal" android:text="扬州美食" android:textColor="#ffffff" android:textSize="22sp" /> </RelativeLayout> <ListView android:id="@+id/lv_meishi" android:layout_width="match_parent" android:layout_height="match_parent" > </ListView></LinearLayout>
UI设计好了,接下来就去完成逻辑代码。
这里,我要显示扬州美食的top10。所以我自定义了两个数组。数组一names是美食名称,数组二ids是食物图片在R文件中对应的id。
private static String[] names = { "大煮干丝", "扬州炒饭", "狮子头", "干菜包子", "三丁包子","四喜汤团", "黄桥烧饼", "翡翠烧卖", "扬州饼食", "千层油膏" };private static int[] ids = { R.drawable.meishidazhugansi,R.drawable.meishiyangzhouchaofan, R.drawable.meishishizitou,R.drawable.meishigancaibaozi, R.drawable.meishisandingbaozi,R.drawable.meishisixitangtuan, R.drawable.meishihuangqiaoshaobing,R.drawable.meishifeicuishaomai, R.drawable.meishiyangzhoubingshi,R.drawable.meishiqiancengyougao };
然后我们通过自定义适配器去完成整个布局的逻辑。
private class MyAdapter extends BaseAdapter {@Overridepublic int getCount() {// TODO Auto-generated method stubreturn names.length;}@Overridepublic View getView(int arg0, View arg1, ViewGroup arg2) {View view = View.inflate(YangzhoumeishiActivity.this,R.layout.list_item_meishi, null);TextView tv_item = (TextView) view.findViewById(R.id.tv_item);ImageView iv_item = (ImageView) view.findViewById(R.id.iv_item);tv_item.setText(names[arg0]);iv_item.setImageResource(ids[arg0]);return view;}@Overridepublic Object getItem(int arg0) {// TODO Auto-generated method stubreturn null;}@Overridepublic long getItemId(int arg0) {// TODO Auto-generated method stubreturn 0;}}
每一个条目显示的布局对应的xml文件如下:
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="wrap_content" android:layout_height="wrap_content" android:gravity="center" android:orientation="horizontal" > <ImageView android:id="@+id/iv_item" android:layout_width="60dip" android:layout_height="60dip" android:src="@drawable/app" /> <TextView android:id="@+id/tv_item" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="扬州美食" android:textColor="#000000" android:textSize="25sp" /></LinearLayout>
后退点击事件,我们返回主页面,即
对应的代码如下:
/*** * 后退点击事件 * * @author Administrator * */public void pre(View v) {Intent i = new Intent(YangzhoumeishiActivity.this, HomeActivity.class);startActivity(i);finish();}
当我们点击每一个条目的时候,进入相对应的界面,所以我们要对每一个条目设置点击事件。
lv_meishi.setOnItemClickListener(new OnItemClickListener() {Intent intent;@Overridepublic void onItemClick(AdapterView<?> arg0, View arg1, int arg2,long arg3) {switch (arg2) {// 大煮干丝case 0:intent = new Intent(YangzhoumeishiActivity.this,DazhugansiActivity.class);startActivity(intent);break;// 扬州炒饭case 1:intent = new Intent(YangzhoumeishiActivity.this,YangzhouchaofanActivity.class);startActivity(intent);break;// 狮子头case 2:intent = new Intent(YangzhoumeishiActivity.this,ShizitouActivity.class);startActivity(intent);break;// 干菜包子case 3:intent = new Intent(YangzhoumeishiActivity.this,GancaibaoziActivity.class);startActivity(intent);break;// 三丁包子case 4:intent = new Intent(YangzhoumeishiActivity.this,SandingbaoziActivity.class);startActivity(intent);break;// 四喜汤团case 5:intent = new Intent(YangzhoumeishiActivity.this,SixitangtuanActivity.class);startActivity(intent);break;// 黄桥烧饼case 6:intent = new Intent(YangzhoumeishiActivity.this,HuangqiaoshaobingActivity.class);startActivity(intent);break;// 翡翠烧卖case 7:intent = new Intent(YangzhoumeishiActivity.this,FeicuishaomaiActivity.class);startActivity(intent);break;// 扬州饼食case 8:intent = new Intent(YangzhoumeishiActivity.this,YangzhoubingshiActivity.class);startActivity(intent);break;// 千层油膏case 9:intent = new Intent(YangzhoumeishiActivity.this,QiancengyougaoActivity.class);startActivity(intent);break;default:break;}}});
因为对应的条目有10个,每一个实现的方式一样,所以,我们只举其中一个作为演示案例。
// 扬州炒饭case 1:intent = new Intent(YangzhoumeishiActivity.this,YangzhouchaofanActivity.class);startActivity(intent);break;
通过意图,我们跳转到扬州炒饭这一条目所对应的主页面中。
先上图:
这里的ui很简单,线性布局,一个ImageView,一个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:gravity="center_horizontal" android:orientation="vertical" > <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/meishiyangzhouchaofan" /> <ScrollView android:layout_width="match_parent" android:layout_height="match_parent" > <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="扬州炒饭又名扬州蛋炒饭,相传源自隋朝越国公杨素爱吃的碎金饭,即蛋炒饭。隋炀帝巡视江都(今扬州)时,将蛋炒饭传入扬州,后经过历代烹饪高手的逐步创新,揉进淮扬菜肴的“选料严谨,制作精细,加工讲究,注重配色,源汁源味”的特色,终于发展成为具淮扬风味有名的主食之一。 扬州炒饭的名气遍及世界很多国家,据国外来的朋友讲,许多外国人都喜欢吃扬州炒饭,却不知道扬州是怎么一回事,在他们的头脑中扬州并不是地名,而误认为是这种炒饭的做法。扬州炒饭的品种丰富,有“金裹银”、“什锦蛋炒饭”及“青菜炒饭”等。 所谓“金裹银”就是在饭粒的外层裹上一层金黄色的鸡蛋,其作法是:先将米饭放入锅中翻炒,然后将打散的鸡蛋液均匀地包裹住米饭。经过这样炒制的米饭,其饭粒的外层是金黄色的,里面则是白色的。 什锦蛋炒饭,是扬州炒饭中最典型的品种,它有很多配料,常用的有鸡蛋、海参、火腿、青豆、虾仁、猪里脊肉、香菇、笋、葱花等等。制作时先将鸡蛋炒好,再将其他配料炒熟,加清汤和盐调好味,盛起备用,然后开始炒米饭,米饭要炒得粒粒分明而没有湖斑,最后将炒好的鸡蛋和其它配料倒入一半炒匀,炒匀后盛出三分之二放在盘中,再将剩下的配料与锅中的米饭炒匀,盖在盘中的炒饭上。如此做出的炒饭既漂亮,又有很多配料在上面,真是好吃看得见啊! " android:textColor="#000000" android:textSize="22sp" /> </ScrollView></LinearLayout>
其余9个美食页面做样一样,不再一一演示。
至此,我们的美食模块也粗略的完成了。
嘿嘿嘿
0 0
- 扬州旅游app(三)
- 扬州旅游app(一)
- 扬州旅游app(二)
- 扬州旅游app(四)
- 扬州旅游app(五)
- 扬州三把刀
- 旅游出行 APP 哪家强?
- 扬州三把刀之厨刀
- 扬州三把刀之修脚刀
- 扬州三把刀之理发刀
- 嘉定三屠与扬州十屠
- 三沙市旅游
- 旅游类APP-环境搭建
- 二代旅游网站程序V1使用手册(三):旅游目的地管理
- 旅游保险App(iOS)界面设计
- 爱旅游app开发策划解决方案
- 旅游类APP-Android模块分析
- 旅游类App的原型制作分享
- 数据结构第三课---栈和队列
- WinPcap学习(五)不用回调方法捕获数据包
- 个人认为比较好听的十首英文歌曲
- Python 代码风格 和 PEP8
- mongodb进程号的查找
- 扬州旅游app(三)
- 解决 linux 基础问题
- qt 调试语句的处理 禁用和重定向到文件
- iOS项目程序上线流程图文详解
- linux 的ssh 使用问题
- PHP经典项目案例-(一)博客管理系统2
- JAVA十个线程消费一个生产者
- Navacat连接字符集问题ORA-12737:Instant Client Light:unsupported server character set ZHS16GBK
- 10道C++输出易错笔试题收集(敢进来挑战吗?)