eatwhatApp开发实战(一)

开发背景:

  当你想用抛硬币来决定事情的时候,那么硬币抛起的瞬间,你就有答案了。一样的,吃啥?eatwhat点开,按钮一点,你就可以知道你中午要吃啥。

话不多说,项目开发走起

  ADT点开,New==>Android Application Project ==>

  首先确定布局,第一版我们就做简单的功能,视图中有两个控件,一个文本(TextView)用来输出店家名称,一个按钮(Button)用来让用户点击进行店家名称的随机切换。在android开发中有两种方式来实现布局,今天我们先讲用配置文件.xml来实现。

  在android项目目录下res/layout/中有一个activity_main.xml的布局文件,我们在其中将其自带的默认的TextView进行设置:

    <TextView
        android:id="@+id/shop_name"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/shop_name"
        android:layout_centerInParent="true"
        android:textSize="18sp" />

  接着设置Button按钮:

	<Button 
	    android:id="@+id/random_btn"
	    android:layout_width="wrap_content"
	    android:layout_height="wrap_content"
	    android:layout_centerHorizontal="true"
	    android:text="@string/random_btn_text"/>

  这就是我们通过.xml创建出来的布局:

  这其中有两点要注意的是两个控件的文本我们都是通过res/values/strings.xml进行设置,这样在后续开发中便于修改以及对应的做国际化

  <string name="shop_name">店名</string>
  <string name="random_btn_text">点我</string>

  界面设置完,我们就来处理业务逻辑:

  在mainactivity.java中定义一个方法init()对控件进行初始化和设置监听:

	private void init() {
		
		//定义一个数组用来存放我们要的几个店名
		shop = new String[]{
				"食莆记","谷之味","王大妈水饺","兰州拉面","惠兴饭店"
		};
		
		//初始化控件textview
		shop_name = (TextView) findViewById(R.id.shop_name);
		
		//初始化控件button
		random_btn = (Button) findViewById(R.id.random_btn);
		//注册按钮点击监听
		random_btn.setOnClickListener(new RandomBtnClick());
	}

   

  定义一个内部类RandomBtnClick来实现点击监听:

	class RandomBtnClick implements OnClickListener{

		@Override
		public void onClick(View v) {
			
			//随机数,区间以之前定义的店家的数组为长度
			Random random = new Random();			
			int num = random.nextInt(shop.length);
			
			//textview显示以该随机数为下标对应的商家数组的名字
			shop_name.setText(shop[num]);
		}		
	}

  

 

  这样,最基本的随机事件就完成了,想吃什么,随意,那就点开eatwhat,听天由命。。。

原文地址:https://www.cnblogs.com/superdo/p/4989827.html