使ç¨Android Studio å¼åAPPå
¥é¨ç»éª
Android studioä½ä¸ºç°å¨ä¸ä¸ªä¸»æµçå®åå¼åå·¥å
·ï¼è¿éæå°ä»ç»å¦ä½å¨Android studioä¸å建ä¸ä¸ªAPP项ç®ä»¥åç¼åä¸ä¸ªç®åçAppï¼å¹¶å¨ä»¥åç»éªä¸ä»ç»å
¶ä»æå
³Android studioçæä½åç¼ç¨æ¹æ³ã
ä¸ãå建ä¸ä¸ªAPP项ç®ï¼
1ãæå¼è½¯ä»¶ï¼å¨èåä¸éæ©file-ãnew projectæå¼å建å导ã
2ãé
置项ç®ï¼ç¡®å®å个å称ååæ¾é¡¹ç®åæ¾è·¯å¾ï¼
Application nameï¼é¡¹ç®å称
Company Domainï¼å
¬å¸åå
Package nameï¼appæå
å称
project locationï¼åæ¾è·¯å¾
3ãæ¥ä¸æ¥è®¾å®å
¼å®¹çå®åçæå°çæ¬ï¼è¿ä¾æ
åµèå®ã
4ãå¦æä¸ç¡®å®å个çæ¬çåºå«ï¼å¯ä»¥ç¹å»âhelp me chooseâï¼å¨æå¼ççªå£ä¸ä»ç»äºå个å®åçæ¬çåè½ã
5ãç¡®å®åæå°å
¼å®¹çæ¬åï¼éæ©é¡¹ç®çæ´»å¨ç±»åï¼è¿éæå¾å¤ç°æç模æ¿å¯ä»¥ä½¿ç¨ï¼å¯¹äºåå¦è
éæ©é»è®¤çBlank Activityå³å¯ã
6ãæ¥ä¸æ¥è®¾å®æ´»å¨å称ï¼çé¢å¸å±çå称ï¼ä»¥åçé¢æ é¢ï¼æåç¹å»finishå®æ项ç®çå建ã
7ãå建å®åï¼å¨é¡¹ç®å-ãapp-ãsrc-ãmain-ãres-ãlayoutä¸åå»xmlæ件就æ¯æå¼æ´»å¨çé¢è®¾è®¡çªå£äºã
对äºå建APP项ç®çè¿ç¨æ¬äººå°±ä¸å¤åä»ç»äºï¼å°ä¼ä¼´ä»¬æç
§ä¸é¢æ¥éª¤æä½ä¸éåºæ¬ä¸é½ä¼äºãææ³åå¤æ¥è§¦android studio(ä¸é¢ç®ç§°AS)çå°ä¼ä¼´ä¹ååºè¯¥é½æ¯ç¨çEclipseï¼ASè·Eclipseæ两ç¹åºå«éè¦äºè§£æ¸
æ¥ï¼
第ä¸ï¼äºè
çå·¥ç¨ç»æä¸ä¸æ ·ï¼å¨Eclipseä¸ä¸ä¸ªProject就代表ä¸ä¸ªé¡¹ç®å·¥ç¨ï¼èå¨Android Studioä¸ä¸ªProject代表ä¸ä¸ªå·¥ä½ç©ºé´ï¼ç¸å½äºEclipseä¸çworkspaceï¼èå¨Android Studioä¸ä¸ä¸ªModuleå°±ç¸å½äºEclipseä¸çä¸ä¸ªProjectï¼è¿ä¸ªæ¦å¿µéè¦å¼æç½ï¼ä¸è¦æ··äºæè§å¾ç³æ¶äºã
第äºï¼æ°å»ºæ导å
¥å·¥ç¨åï¼è¦å é¤å·¥ç¨ï¼Android Studioåªè½å»workspaceæ件夹å»å é¤ï¼èä¸è½å¨å¼åç¯å¢ä¸å é¤ã
äºã代ç ç¼åï¼
ä½ä¸ºä¸ä¸ªèé¸ï¼å¨ç¼å代ç åæ大çé®é¢å°±æ¯ä¸æ¸
æ¥ç®å½ç»æ以åæä½æµç¨ï¼æ°æå¨ç¼å代ç ä¹åå¿
é¡»å¾å¼æ¸
æ¥ä¸é¢çç®å½ç»æï¼
æ°å»ºå·¥ç¨é¡¹ç®åASçProductç®å½ç»æå¦ä¸æ示ï¼
.ideaï¼//ASçæçå·¥ç¨é
ç½®æ件ï¼ç±»ä¼¼Eclipseçproject.propertiesã
appï¼//ASå建工ç¨ä¸çä¸ä¸ªModuleã
gradleï¼//æ建工å
·ç³»ç»çjaråwrapperçï¼jaråè¯äºASå¦ä½ä¸ç³»ç»å®è£
çgradleæ建èç³»ã
External Librariesï¼//ä¸æ¯ä¸ä¸ªæ件夹ï¼åªæ¯ä¾èµlibæ件ï¼å¦SDKçã
æ°å»ºå·¥ç¨é¡¹ç®åASçModuleç®å½ç»æå¦ä¸æ示ï¼
buildï¼//æ建ç®å½ï¼ç¸å½äºEclipseä¸é»è®¤Javaå·¥ç¨çbinç®å½ï¼é¼ æ æ¾å¨ä¸é¢å³é®Show in Exploerå³å¯æå¼æ件夹ï¼
ç¼è¯çæçapkä¹å¨è¿ä¸ªç®å½çoutsåç®å½ï¼ä¸è¿å¨ASçå·¥ç¨éæ¯é»è®¤ä¸æ¾ç¤ºoutç®å½çï¼å°±ç®æç¼è¯ç»æä¹
ä¸æ¾ç¤ºï¼å³é®æå¼éè¿æ件夹ç´æ¥å¯ä»¥çã
libsï¼//ä¾èµå
ï¼å
å«jarå
åjniçå
ã
srcï¼//æºç ï¼ç¸å½äºeclipseçå·¥ç¨ã
mainï¼//主æ件夹
javaï¼//Java代ç ï¼å
å«å·¥ç¨åæ°å»ºæ¯é»è®¤äº§ççTestå·¥ç¨æºç ã
resï¼//èµæºæ件ï¼ç±»ä¼¼Eclipseã
layoutï¼//Appå¸å±åçé¢å
ç´ é
ç½®ï¼é·åEclipseã
menuï¼//Appèåé
ç½®ï¼é·åEclipseã
valuesï¼//é·åEclipseã
dimens.xmlï¼//å®ä¹cssçé
ç½®æ件ã
strings.xmlï¼//å®ä¹å符串çé
ç½®æ件ã
styles.xmlï¼//å®ä¹styleçé
ç½®æ件ã
......ï¼//arraysçå
¶ä»æ件ã
......ï¼//assetsçç®å½
AndroidManifest.xmlï¼//Appåºæ¬ä¿¡æ¯ï¼Android管çæ件ï¼
ic_launcher-web.pngï¼//Appå¾æ
build.gradleï¼//ModuleçGradleæ建èæ¬
å
¶ä¸éè¦éç¹äºè§£ä»¥ä¸å 个æ件ï¼
res/layout/main.xmlï¼ App主çªä½å¸å±æ件ï¼ä½ çåºç¨é¿ä»ä¹æ ·é½å¨è¿è¾¹å®ä¹ï¼æDesignåText两ç§æ¨¡å¼
res/values/strings.xml ï¼è¿ä¸ªæ件ç¨æ¥åæ¾ç¨åºè°ç¨çåç§å符串
src/com/example/helloandroid/MyActivity.java ï¼è¿ä¸ªå°±æ¯æ们ç主ç¨åºç±»ï¼çä¸è¦å®ç°çåè½é½å¨è¿ä¸ªæ件éæ·»å
å好åå¤å·¥ä½åï¼ç»äºå¯ä»¥å¼å§åæ们çhello androidäºã
1ãé¦å
为åºç¨æ·»å ä¸ä¸ªid为hellotextViewçtextviewåä¸ä¸ªid为hellobuttonçbuttonï¼ï¼å¨main.xmlæ件ä¸ç¼åï¼
代ç å¦ä¸ï¼
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="
http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<TextView
android:layout_width="fill_parent"
android:layout_height="180dp"
android:text="@string/default_message"
android:id="@+id/hellotextView" android:textColor="#00ff00" android:gravity="center"/>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/button_send"
android:id="@+id/hellobutton" android:layout_gravity="center"/>
</LinearLayout>
2ã代ç åæ§ä»¶ç¨å°çå符串å®ä¹å¦ä¸ï¼
代ç å¦ä¸:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">helloandroid by hiwanz</string>
<string name="button_send">Say something</string>
<string name="default_message">Click button below!</string>
<string name="interact_message">You just clicked on the Button!</string>
</resources>
3ã主ç¨åºä¸å®ä¹buttonç¹å»åæ¹åtextviewæ¾ç¤ºçææ¬ï¼å¹¶ä¸å¼¹åºToastæ示信æ¯ã
代ç å¦ä¸:
package com.example.helloandroid;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
import android.widget.Toast;
public class MyActivity extends Activity {
/**
* Called when the activity is first created.
*/
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
//å¾å°æé®å®ä¾
Button hellobtn = (Button)findViewById(R.id.hellobutton);
//设置çå¬æé®ç¹å»äºä»¶
hellobtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//å¾å°textviewå®ä¾
TextView hellotv = (TextView)findViewById(R.id.hellotextView);
//å¼¹åºToastæ示æé®è¢«ç¹å»äº
Toast.makeText(MyActivity.this,"Clicked",Toast.LENGTH_SHORT).show();
//读åstrings.xmlå®ä¹çinteract_messageä¿¡æ¯å¹¶åå°textviewä¸
hellotv.setText(R.string.interact_message);
}
});
}
}
代ç å好åï¼çµèéè¿USBæ°æ®çº¿è¿æ¥ææºï¼ææºç³»ç»è®¾ç½®éçå¼å人åé项éæå¼USBè°è¯ï¼å¨IDEä¸ç´æ¥ç¹Runå°±å¯ä»¥å¨ææºä¸çå°è¿è¡çææäºã
æåç»å¤§å®¶ç®åä»ç»androidäºç§å¸å±æ¨¡å¼
Androidå¸å±æ¯åºç¨çé¢å¼åçéè¦ä¸ç¯ï¼å¨Androidä¸ï¼å
±æäºç§å¸å±æ¹å¼ï¼åå«æ¯ï¼LinearLayout ï¼çº¿æ§å¸å±ï¼ï¼RelativeLayoutï¼ç¸å¯¹å¸å±ï¼ï¼FrameLayoutï¼å¸§å¸å±ï¼ï¼AbsoluteLayoutï¼ç»å¯¹å¸å±ï¼ï¼TableLayoutï¼è¡¨æ ¼å¸å±ï¼ãç®åæ¬äººæ¥è§¦æå¤çæ¯LinearLayout ï¼çº¿æ§å¸å±ï¼åRelativeLayoutï¼ç¸å¯¹å¸å±ï¼å¨è¿éå
对è¿ä¸ç§å¸å±æ¨¡å¼è¿è¡ä»ç»ï¼å
¶å®ä¸¤ç§çæ¬èé¸æ¥è§¦è¿å¹¶å¼æç½åï¼åå¨å
·ä½çå®ä¾ä¸ç»å¤§å®¶è¯´è¯´ã
1ãLinearLayoutï¼çº¿æ§å¸å±ï¼
线æ§å¸å±æ¯Androidå¼åä¸æ常è§çä¸ç§å¸å±æ¹å¼ï¼å®æ¯æç
§åç´æè
æ°´å¹³æ¹åæ¥å¸å±ï¼éè¿âandroid:orientationâå±æ§å¯ä»¥è®¾ç½®çº¿æ§å¸å±çæ¹åãå±æ§å¼æåç´ï¼verticalï¼åæ°´å¹³ï¼horizontalï¼ä¸¤ç§ãå½åç´å¸å±æ¶ï¼æ¯ä¸è¡å°±åªæä¸ä¸ªå
ç´ ï¼å¤ä¸ªå
ç´ ä¾æ¬¡åç´å¾ä¸ï¼æ°´å¹³å¸å±æ¶ï¼åªæä¸è¡ï¼æ¯ä¸ä¸ªå
ç´ ä¾æ¬¡åå³æåã
常ç¨çå±æ§ï¼
android:orientationï¼å¯ä»¥è®¾ç½®å¸å±çæ¹å
android:gravity:ç¨æ¥æ§å¶ç»ä»¶ç对é½æ¹å¼
layout_weightï¼æ§å¶å个ç»ä»¶å¨å¸å±ä¸çç¸å¯¹å¤§å°
2ãRelativeLayoutï¼ç¸å¯¹å¸å±ï¼
ç¸å¯¹å¸å±æ¯æç
§ç»ä»¶ä¹é´çç¸å¯¹ä½ç½®æ¥å¸å±ï¼æ¯å¦å¨æ个ç»ä»¶ç左边ï¼å³è¾¹ï¼ä¸é¢åä¸é¢çã
纯线æ§å¸å±ç缺ç¹æ¯å¾ä¸æ¹ä¾¿ä¿®æ¹æ§ä»¶çæ¾ç¤ºä½ç½®ï¼æ以å¼åä¸ç»å¸¸ä¼ä»¥çº¿æ§å¸å±ä¸ç¸å¯¹å¸å±åµå¥çå½¢å¼è®¾ç½®å¸å±ãç¸å¯¹å¸å±æ¯androidå¸å±ä¸æ为强大çï¼é¦å
å®å¯ä»¥è®¾ç½®çå±æ§æ¯æå¤äºï¼å
¶æ¬¡å®å¯ä»¥åçäºæ
ä¹æ¯æå¤çãandroidææºå±å¹çå辨çäºè±å
«é¨æ以为äºèèå±å¹èªéåºçæ
åµæ以å¨å¼åä¸å»ºè®®å¤§å®¶é½å»ä½¿ç¨ç¸å¯¹å¸å± å®çåæ åå¼èå´é½æ¯ç¸å¯¹çæ以使ç¨å®æ¥åèªéåºå±å¹æ¯æ£ç¡®ç