Android学習ノート(一)
8241 ワード
アクティビティ(Activity)は、主にユーザーとのインタラクションに使用されるユーザーインタフェースを含むことができるコンポーネントです.1つのアプリケーションに0つ以上のアクティビティを含めることができます.
すべての自己書き込みActivityはActivityクラスに継承されます.プロジェクト内のアクティビティは、ActivityのonCreate()メソッドを書き換える必要があります.たとえば、次のFirstActivityアクティビティがあります.
上のonCreate()メソッドは簡単ですが、親のonCreate()メソッドを呼び出し、後で自分の論理をたくさん入れる必要があります.
アクティビティ(Activity)と書くと、Androidプログラムの設計は論理とビューの分離にこだわり、アクティビティはレイアウトに対応することが望ましい.レイアウトはインタフェースの内容を表示するために使用される.
ここではレイアウトファイルを新規作成してfirst_と名前を付けることができます.layout.デフォルトのレイアウトのXMLファイルは、次のコードを使用します.
レイアウトファイルにボタン(Button)を追加する必要がある場合は、XMLファイルで編集します.Buttonレイアウトコードは次のようになります.
内
Android:idは、現在の要素に一意の識別子を定義し、コード内でこの要素を操作できます.(XMLでは、idを1つ参照すると@id/id_nameが使用されます.
XMLでidを定義する必要がある場合は@+id/id_を使用する必要がありますname)
android:layout_widthは現在の要素の幅を指定し、ここではmatch_を使用します.parentは、現在の要素を親要素と同じ幅にすることを示します.
android:layout_heightは現在の要素の高さを指定し、ここではwrap_を使用します.contentは、現在の要素の高さにちょうど中身が含まれていることを示します.
Android:textは、要素に表示される文字の内容を指定します.(@string/app_button_1はtext参照がstringのapp_button_1であることを示す).
このような簡単なレイアウトファイルの作成が完了しました.次に、アクティビティでこのレイアウトファイルをロードし、FirstActivityに戻り、onCreate()メソッドに次のコードを追加します.
ここでsetContentView()メソッドを呼び出して、現在のアクティビティにレイアウトをロードします.一般的には、レイアウトファイルのidが転送されます.R.layout.を呼び出すfirst_layoutはfirstを得ることができますlayout.xmlレイアウトのidは、setContentView()メソッドにこの値を入力すればよい(コードで使用されるRファイルは、自分で作成したパッケージのRファイルであり、androidパッケージのRファイルをインポートしないことに注意).
私たちのレイアウトファイルは書き終わり、アクティビティ(Activity)にもロードされましたが、まだ完成していません.すべてのアクティビティ(Activity)はAndroid TestManifestにあります.xmlに登録してから有効になります.
次のコードはAndroidTestManifestです.xmlに私たちが書いたアクティビティを登録します(Activity):
内
Android:nameは、どのアクティビティを具体的に登録するかを指定します.
Android:lableアクティビティでタイトルバーの内容を指定します(メインアクティビティに指定したlableはタイトルバーの内容だけでなく、イニシエータでアプリケーションが表示する名前にもなります).
タグにタグを入れ、
この2つの宣言は、FirstActivityをプログラムの主なアクティビティとして使用します.つまり、アプリケーションアイコンを開くには、まずこのアクティビティが開きます.
上記の内容を書き終えると、シミュレータでプログラムを実行することができます.
すべての自己書き込みActivityはActivityクラスに継承されます.プロジェクト内のアクティビティは、ActivityのonCreate()メソッドを書き換える必要があります.たとえば、次のFirstActivityアクティビティがあります.
public class FirstActivity extends Activity{
@Override
protected void onCreate(Bundle savedInstanceState){
Super.onCreate(savedInstanceState);
}
}
上のonCreate()メソッドは簡単ですが、親のonCreate()メソッドを呼び出し、後で自分の論理をたくさん入れる必要があります.
アクティビティ(Activity)と書くと、Androidプログラムの設計は論理とビューの分離にこだわり、アクティビティはレイアウトに対応することが望ましい.レイアウトはインタフェースの内容を表示するために使用される.
ここではレイアウトファイルを新規作成してfirst_と名前を付けることができます.layout.デフォルトのレイアウトのXMLファイルは、次のコードを使用します.
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
</LinearLayout>
レイアウトファイルにボタン(Button)を追加する必要がある場合は、XMLファイルで編集します.Buttonレイアウトコードは次のようになります.
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<!-- Button -->
<Button android:id="@+id/button_1" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="@string/app_button_1"/>
</LinearLayout>
内
Android:idは、現在の要素に一意の識別子を定義し、コード内でこの要素を操作できます.(XMLでは、idを1つ参照すると@id/id_nameが使用されます.
XMLでidを定義する必要がある場合は@+id/id_を使用する必要がありますname)
android:layout_widthは現在の要素の幅を指定し、ここではmatch_を使用します.parentは、現在の要素を親要素と同じ幅にすることを示します.
android:layout_heightは現在の要素の高さを指定し、ここではwrap_を使用します.contentは、現在の要素の高さにちょうど中身が含まれていることを示します.
Android:textは、要素に表示される文字の内容を指定します.(@string/app_button_1はtext参照がstringのapp_button_1であることを示す).
このような簡単なレイアウトファイルの作成が完了しました.次に、アクティビティでこのレイアウトファイルをロードし、FirstActivityに戻り、onCreate()メソッドに次のコードを追加します.
public class FirstActivity extends Activity {
protected void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
// , setContentView()
setContentView(R.layout.first_layout);
}
ここでsetContentView()メソッドを呼び出して、現在のアクティビティにレイアウトをロードします.一般的には、レイアウトファイルのidが転送されます.R.layout.を呼び出すfirst_layoutはfirstを得ることができますlayout.xmlレイアウトのidは、setContentView()メソッドにこの値を入力すればよい(コードで使用されるRファイルは、自分で作成したパッケージのRファイルであり、androidパッケージのRファイルをインポートしないことに注意).
私たちのレイアウトファイルは書き終わり、アクティビティ(Activity)にもロードされましたが、まだ完成していません.すべてのアクティビティ(Activity)はAndroid TestManifestにあります.xmlに登録してから有効になります.
次のコードはAndroidTestManifestです.xmlに私たちが書いたアクティビティを登録します(Activity):
1 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
2 package="com.gui.activitytest"
3 android:versionCode="1"
4 android:versionName="1.0" >
5
6 <uses-sdk
7 android:minSdkVersion="15"
8 android:targetSdkVersion="20" />
9
10 <application
11 android:allowBackup="true"
12 android:icon="@drawable/ic_launcher"
13 android:label="@string/app_name"
14 android:theme="@style/AppTheme" >
15
16 <activity
17 android:name=".FirstActivity"
18 android:label="this is Firstactivity" >
19
20 <intent-filter>
21 <action android:name="android.intent.action.MAIN"/>
22 <category android:name="android.intent.category.LAUNCHER" />
23 </intent-filter>
24 </activity>
25 </application>
26
27 </manifest>
内
Android:nameは、どのアクティビティを具体的に登録するかを指定します.
Android:lableアクティビティでタイトルバーの内容を指定します(メインアクティビティに指定したlableはタイトルバーの内容だけでなく、イニシエータでアプリケーションが表示する名前にもなります).
この2つの宣言は、FirstActivityをプログラムの主なアクティビティとして使用します.つまり、アプリケーションアイコンを開くには、まずこのアクティビティが開きます.
上記の内容を書き終えると、シミュレータでプログラムを実行することができます.