zoukankan      html  css  js  c++  java
  • 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,听天由命。。。

  • 相关阅读:
    PAT 1097. Deduplication on a Linked List (链表)
    PAT 1096. Consecutive Factors
    PAT 1095. Cars on Campus
    PAT 1094. The Largest Generation (层级遍历)
    PAT 1093. Count PAT's
    PAT 1092. To Buy or Not to Buy
    PAT 1091. Acute Stroke (bfs)
    CSS:word-wrap/overflow/transition
    node-webkit中的requirejs报错问题:path must be a string error in Require.js
    script加载之defer和async
  • 原文地址:https://www.cnblogs.com/superdo/p/4989827.html
Copyright © 2011-2022 走看看