美文网首页android
Android Studio入门

Android Studio入门

作者: cxm11 | 来源:发表于2016-03-26 16:03 被阅读300次

    Android Studio创建项目

    首先指出Android Studio中的两个概念。Project和Module.
    在AS中:
    Project相当于Eclipse中的工作空间
    Module为一个具体的项目,相当于Eclipse中的Project。

    AS创建一个项目(指Module),首先要先创建Project。但是在你创建项目的同时,Project自动创建了。

    文件目录结构有Android和Project(和Eclipse相同)两种方式,可以互相切换

    如果你已经有一个项目,你想在项目中创建一个Module,你可以选择File-->New Module.
    这样,会在当前的目录下创建一个 Module ,而不是在一个新的窗口中,单独创建 ProjectModule

    同样的道理,你可以设置项目类型,但是,由于你现在是创建一个 Module ,所以只能选择一种类型。下方的4个选项代表着不同的意义:

    Android Library :创建一个 Android LibraryModule
    Import Existing Project :导入其他项目为一个 Module ,导入的项目可以是 Eclipse ADT 项目,也可以是 Gradle 项目( Gradle 只是项目构建工具, Eclipse 中也是可以使用的)。
    Import .JAR or .AAR Package :导入 JAR 或者 AAR 文件为一个 Module
    Java Library :创建一个 JavaModule ,主要用于编写 Java 的工具包。

    选择完毕,点击 Next 。其余步骤,和上面几乎一样,就不在赘述了。


    每个Module新建时默认的Activity可以同名但是其对应的布局文件名不能同名。


    Android Studio入门Hello World

    一、新建工程

    二、使用android控件
    android 模式目录下

    打开res目录下的layout文件夹,双击activity_main.xml,将button按钮拖入手机中,改名为change.

    点击Text,我们可以看到Button这一个新加入的控件。

    <Button                               
    android:layout_width="wrap_content"    
    android:layout_height="wrap_content"
    android:text="change"
    android:id="@+id/button"    
    android:layout_marginTop="34dp"            
    android:layout_below="@+id/textView"    
    android:layout_alignParentLeft="true"            
    android:layout_alignParentStart="true" />
    

    三、编辑Activity
    这个时候打开java目录,找到MainActivity.java,双击打开。我们添加两个控件声明,同时为其赋值。完整代码如下:

    package com.sinaapp.gavin.test;
    
    import android.app.Activity;
    import android.os.Bundle;
    import android.view.Menu;
    import android.view.MenuItem;
    import android.widget.Button;
    import android.widget.TextView;
    
    public class MainActivity extends Activity {
    
    private TextView textView;//声明
    private Button button;    //声明
    
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    
        textView = (TextView)findViewById(R.id.textView);    //赋值
        button = (Button)findViewById(R.id.button);          //赋值
    
    }
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.menu_main, menu);
        return true;
    }
    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        // Handle action bar item clicks here. The action bar will
        // automatically handle clicks on the Home/Up button, so long
        // as you specify a parent activity in AndroidManifest.xml.
        int id = item.getItemId();
    
        //noinspection SimplifiableIfStatement
        if (id == R.id.action_settings) {
            return true;
        }
        return super.onOptionsItemSelected(item);
    }
    }
    

    接下来,在onCreate方法中为button设置按键监听。

    protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    
    textView = (TextView)findViewById(R.id.textView);
    button = (Button)findViewById(R.id.button);
    
    button.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            textView.setText("changed");
        }
    });
    }
    

    四、dubug测试

    五、生成apk文件

    六、总结


    Android Studio自动生成的两个XML

    activity_main.xml
    content_main.xml

    这个是新建工程时候选择了 Blank Activity 这个模板,会生成这两个XML,选择 Empty Activity,只会生成activity_main.xml

    activity_main.xml没办法拖动控件,content的可以拖动。activity是显示content_main.xml里面的,类似于including的。你可以将content里面的代码粘到activity.xml里面。

    从名字上你就应该可以看出来,activity_main - MainActivity的布局文件,content_main - main的内容,你再进activity_main看一下里面的布局,就会发现,activity_main主要负责的是包含toolbar的整个页面布局,为了不让这个布局文件太臃肿,使用了一个<include/>标签把content_main放进activity_main布局中,

    <include layout="@layout/content_main" />
    

    这应该是Google设置这两个布局的意思。所以说你在content_main中写自己页面的布局就好了,涉及到toolbar相关的就在activity_main中改


    使用AS开发用户登录界面

    1. 右键点击new-->Module,Module相当于新建了一个项目。如图所示
      2.选择Android Application,点击next
      3.将My Module和app改成自己项目相应的名字,同时选择支持的Android版本

    2. 选择Blank Activity,自己动手编写登录界面,而不依赖系统内置的Login Activity,一直点击next,最后点击finish

    3. 在Project下我们可以看到出现了我们刚才新建的login项目
      6.展开res/layout,点击打开activity_main.xml文件,在这个文件里面我们完成登录界面的编写
      将activity_main.xml的代码替换成如下代码:

       <TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
         android:layout_width="fill_parent"
       android:layout_height="fill_parent"
       android:gravity="center_vertical"
       android:stretchColumns="0,3">
       <TableRow>
           <TextView />
       <TextView
           android:text="账   号:"
           android:layout_width="wrap_content"
           android:layout_height="wrap_content"
           android:textSize="24px"
           />
       <EditText
           android:id="@+id/account"
           android:layout_width="wrap_content"
           android:layout_height="wrap_content"
           android:textSize="24px"
           android:minWidth="220px"/>
       <TextView />
       </TableRow>
       <TableRow android:layout_marginTop="20px">
       <TextView />
       <TextView
           android:text="密  码:"
           android:layout_width="wrap_content"
           android:layout_height="wrap_content"
           />
       <EditText
           android:id="@+id/pwd"
           android:layout_width="wrap_content"
           android:layout_height="wrap_content"
           android:minWidth="220px"
           android:textSize="24px"
           android:inputType="textPassword"/>
       <TextView />
       </TableRow>
       <TableRow android:layout_marginTop="20px">
       <TextView />
       <Button
           android:id="@+id/login"
           android:text="登录"
           android:layout_width="wrap_content"
           android:layout_height="wrap_content"
           />
       <Button
           android:id="@+id/quit"
           android:text="退出"
           android:layout_width="wrap_content"
           android:layout_height="wrap_content"/>
       <TextView />
       </TableRow>
       </TableLayout>
      

    参考文章:
    1.Android Studio入门 Hello World
    2.如何使用Android Studio开发用户登录界面
    3.Android Studio创建项目
    4.使用Android Studio新建Project并建立多个Module

    相关文章

      网友评论

        本文标题:Android Studio入门

        本文链接:https://www.haomeiwen.com/subject/rhmdlttx.html