2014年11月19日 星期三

Android-AndroidAnnotations 基本使用方式

簡化您的Android程式碼,專注於邏輯

第2 - 5點圖片是重複的
程式碼AndroidManifest.xml 部分要特別注意,目前使用Android 5.0

1 . 首先去GitHub下載Lib : AndroidAnnotations下載位置





























2 . 將 androidannotations-api-3.1.jar 匯入您的專案底下














3 . 在您專案創立 compile-libs 並且將 androidannotations-3.1.jar放入底下















4 . 點選專案底下的 Preperties -> Java Compiler -> AnnotationProcessing
     ( 若沒有此選項可以參考文章 )

-----此為無選項範例圖













-----此為無選項範例圖

5 . 將選項勾選起來















6 . 點選專案底下的 Preperties -> Java Compiler -> AnnotationProcessing -> Factory Path















7 . 點選確認後並且重新開啟Eclipse















8 . 程式碼測試 :

MainActivity.java
package com.example.androidannotations;

import org.androidannotations.annotations.Click;
import org.androidannotations.annotations.EActivity;
import org.androidannotations.annotations.Fullscreen;
import org.androidannotations.annotations.LongClick;

import android.support.v7.app.ActionBarActivity;
import android.widget.Toast;

@Fullscreen
@EActivity(R.layout.activity_main)
public class MainActivity extends ActionBarActivity {

    /*
    @ViewById(R.id.textView)
    TextView textView;
     */
    
    @Click(R.id.button1)   
    void myButtonClicked() {  
        Toast.makeText(this, "測試成功", Toast.LENGTH_SHORT).show();
    } 

    @LongClick(R.id.textView)
    void startExtraActivity() {  
        Toast.makeText(this, "您有長按", Toast.LENGTH_SHORT).show();
    }

}


activity_main.xml
package com.example.androidannotations;

import org.androidannotations.annotations.Click;
import org.androidannotations.annotations.EActivity;
import org.androidannotations.annotations.Fullscreen;
import org.androidannotations.annotations.LongClick;

import android.support.v7.app.ActionBarActivity;
import android.widget.Toast;

@Fullscreen
@EActivity(R.layout.activity_main)
public class MainActivity extends ActionBarActivity {

    /*
    @ViewById(R.id.textView)
    TextView textView;
     */
    
    @Click(R.id.button1)   
    void myButtonClicked() {  
        Toast.makeText(this, "測試成功", Toast.LENGTH_SHORT).show();
    } 

    @LongClick(R.id.textView)
    void startExtraActivity() {  
        Toast.makeText(this, "您有長按", Toast.LENGTH_SHORT).show();
    }

}


AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.androidannotations"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
        android:minSdkVersion="14"
        android:targetSdkVersion="21" />

    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name=".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>
    </application>

</manifest>


@EActivity(R.layout.activity_main)
Layout

@ViewById

1 . OnCreate
@UiThread
@AfterViews
void onAfterViews() {
}
註冊頁面更改為底線


點擊
@Click(R.id.btnTest) 
void testRest(){
}

下一頁
GiftDetailActivity_.intent(this).start();

A 發送
@Extra@InstanceStateString info;

B_.intent(this).info(mInfo).start();

B 接收
@Extra@InstanceStateString info;

接收端一定要先註冊參數,發送端才能傳送

參考網址 : 連結


1 則留言: