Android快速入门教程1


在开始前: 1

修改第一个APK 9

分析工程结构: 9

如何从当前activity跳转到新的activity并返回 12


图片可在附件中查看:

在开始前:

准备:

1、eclipse环境(网上很多相应的教程)

2、Android设备(建议实体设备)

注意点:

1、插入android设备后eclipse不能连接到相应设备(adb未能正常连接)。此种情况可以使用市面上一些pc端的手机辅助软件。360手机助手之类的(不要使用豌豆荚)打开adb(进程中查看)。然后再开启eclipse即可找到设备。也可以修改环境变量解决此问题(似乎不是很灵)

2、手机一定要打开调试模式(设置中设置此项)

3、长时间调试可以选择调试时不关闭背光


完成第一个apk

1、打开eclipse,先配置工作环境目录(图1)。如果以后使用别人的代码不要放在工作环境目录下,会导致导入失败。可以放在别的目录即可顺利导入别人的工程。

1

2、
点击ok后进入eclipse,选择file->new->android application project。出现图2的界面。输入apk的名字,eclipse会自动输入别的选项,这里我们把Package Name改为com.test.firstapk 。这里不改没关系,按照个人喜好就可以了。在下面分别对应了,最小需求的系统版本,目标系统版本,编译的系统版本(也就是最高支持的,当然是最新的),主题选项(选了这个ui会好看很多,所以默认选上吧)。

2


3、下一步进入工程配置,一般没特殊需求就默认就可以了。自动创建一个启动图标、一个activity等。

3


4、下一步后进入启动图标的配置选项,可以选择自己的图标,也可以使用文字。具体的定义试试就知道了。

4


5、下一步后进入之前选择了自动创建一个activity的种类选项。第一个为普通的activity视图(上栏一直存在),第二个为全屏的activity(边框会自动隐藏),第三个为左边有常驻菜单栏的activity。这里也只是一个模版并不是固定的,在里面还是可以根据自己喜好进行修改的。

5


6、配置activity的属性,activity的标签,layout的名字,导航模版(刚开始用none,别的模版都是用fragment(以后再说这个,刚开始接触从简单的开始,这个稍微麻烦一点点))。

6

7、
点击完成后,我们就创建了第一个activity,但是还未完成,我们需要配置一下运行选项。选择菜单栏中run->run configurations。弹出图7的对话框。选择FirstApk,点击target,选择Launch on all compatible devices/AVD’s中的Activity devices。然后保存运行,选择我们的设备,点击ok后,就可以看到设备上启动你做的第一个activity

7


修改第一个APK

分析工程结构:

我们时常需要关注的是srcres文件夹以及AndroidManifrest.xml(配置文件)这几个。

Src下放置的是我们的packageclass(编写的程序都在这个下面,分为packageclass可以更好的管理代码,让层次更加清晰,有时间可以看看MVC结构)。

Res目录下放了所有的资源文件。Drawable为图片资源(可以放置适应各个屏幕的图片)。Layout放置的为各个activity以及视图(view)的布局文件。

Values则是一些文字引用,主题之类的文件。Menu则是按钮视图配置。


如添加一个TextViewButton以及button的响应:

1、在layout中的activity_main.xml中添加一个textviewbutton。如果是默认配置的话,看到的将是一个相对布局(RelativeLayout ),如果是在固定的屏幕设备上的画,使用相对布局是相对容易对,但是如果考虑到设备兼容性(还是只能只用线性布局,最好的是根据不同的设备屏幕匹配不同的layout)。

layout添加的方式有两种,一种是基于可视的,一种是xml文件。一切从简开始,我们使用直观的可视添加。如图8所示。添加完成后,我们可以去xml中看看这两个空间的编号名称分别为textview1,button1,记下这两个编号(也可以自己指定)。这样,我们就在视图上添加了我们需要的,但是程序中我们并未进行处理,因此当我们点击运行后,设备上会出现但是并不能执行任何指令。

8


2、在程序中处理视图

public class MainActivity extends Activity {

//这个是相当于指针还未实例化千万不能直接使用

//这里需要导入textview和button的class,eclipse会帮助你自动导入

TextView text1; //定义一个文本view

Button btn1; //定义一个按钮

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main); //加载视图文件

text1 = (TextView)this.findViewById(R.id.textView1); //获得具体的对象

btn1 = (Button)this.findViewById(R.id.button1); //获得具体的对象

//添加一个按钮事件,将textview的文本改为“第一个apk

btn1.setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View v) {

// TODO Auto-generated method stub

text1.setText("第一个apk");

}

});

}

@Override

public boolean onCreateOptionsMenu(Menu menu) {

// Inflate the menu; this adds items to the action bar if it is present.

getMenuInflater().inflate(R.menu.main, menu);

return true;

}

}


如何从当前activity跳转到新的activity并返回

1、在之前的工程里面的com.test.firstapk选择添加一个新的class 。如图9,新建一个activity,名字为SecondActivity,继承Activity。点击ok后就可以看到一个新的activity已经建立好。

9


2、建立好activity后,我们还需要一个布局文件给activity使用。在目录layoutnew一个Android xml。如图10File的名字不能使用大写,选择线性布局。

10

3、布局文件中分别添加progress barseek bar Button

4、修改secondactivity的代码

public class SecondActivity extends Activity {

Timer timer = new Timer(); //构建一个定时器

  ProgressBar pbar1; //定义一个进度栏

SeekBar sbar1; //定义一个滑动栏

Button btn1; //定义一个按钮

boolean autoRun = false; //手动改变进度栏还是自动改变标志

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.secondacivity); //加载视图文件

pbar1 = (ProgressBar)this.findViewById(R.id.progressBar1);

sbar1 = (SeekBar)this.findViewById(R.id.seekBar1);

/*添加滑动栏改变时,如果为手动修改状态则改变progressbar*/

sbar1.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {

@Override

public void onStopTrackingTouch(SeekBar seekBar) {

// TODO Auto-generated method stub

if(!autoRun)

{

pbar1.setProgress(seekBar.getProgress());

}

}

@Override

public void onStartTrackingTouch(SeekBar seekBar) {

// TODO Auto-generated method stub

}

@Override

public void onProgressChanged(SeekBar seekBar, int progress,

boolean fromUser) {

// TODO Auto-generated method stub

if(!autoRun)

{

pbar1.setProgress(progress);

}

}

});

btn1 = (Button)this.findViewById(R.id.button1);

/*切换手动自动模式*/

btn1.setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View v) {

// TODO Auto-generated method stub

if(autoRun == false)

{

autoRun=true;

btn1.setText("手动");

}

else

{

autoRun=false;

btn1.setText("自动");

}

}

});

/*建立一个定时任务,如果允许自动运行,则自动增加progressbar*/

timer.schedule(new TimerTask(){

@Override

public void run() {

// TODO Auto-generated method stub

if(autoRun)

{

int i=pbar1.getProgress();

if((i+1)<=100)

{

pbar1.setProgress(i+1);

}

else

{

pbar1.setProgress(0);

}

}

}}, 10, 100);

}

@Override

protected void onDestroy() {

// TODO Auto-generated method stub

super.onDestroy();

//退出时一定要销毁进程

timer.cancel();

}

}

5、按照之前的方法在mainactivity中添加一个按钮并加入如下响应

btn2 = (Button)this.findViewById(R.id.button2);

btn2.setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View v) {

// TODO Auto-generated method stub

//启动一个新的activity

Intent intent =new Intent(context,SecondActivity.class);

startActivity(intent);

}

});

6、运行即可查看apk(运行后,第一个activity是木有问题的,但是我们忘了在AndroidManifest.xml中添加activity,当我们选择第二个activity的时候,杯具了,程序挂掉)

7、修改AndroidManifest.xml如下:

<?xml version="1.0" encoding="utf-8"?>

<manifest xmlns:android="http://schemas.android.com/apk/res/android"

    package="com.test.firstapk"

    android:versionCode="1"

    android:versionName="1.0" >

    <uses-sdk

        android:minSdkVersion="8"

        android:targetSdkVersion="17" />

    <application

        android:allowBackup="true"

        android:icon="@drawable/ic_launcher"

        android:label="@string/app_name"

        android:theme="@style/AppTheme" >

        <activity

            android:name="com.test.firstapk.MainActivity"

            android:label="@string/app_name" >

            <intent-filter>

                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />

            </intent-filter>

        </activity>

        <!-- 还需要添加一个activity才能正常启动 -->

<activity 

            android:name="com.test.firstapk.SecondActivity"

            android:label="@string/app_name"

            ></activity>

    </application>

</manifest>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值