[Adroid] Actionbarsherlock tutorial
ActionBar chỉ hỗ trợ cho version api 11 trở lên, muốn tương
thích được với các version cũ như 8 (android2.2) thì ta phải dùng
ActionBarSherlock.
Download và nhúng thư viện actionbarsherlock
1. Truy
cập địa chỉ http://actionbarsherlock.com/index.html
và download về và unzip ra được thư mục như hình
2. Chú
ý trong thư mục vừa unzip có thư mục tên actionbarsherlock, đổi tên thành “ActionBarSherlockLib”
cho dễ sử dụng.
Nhúng thư viện ActionBarSherlockLib vào Eclipse
3. Để
import ActionBarSherlock Library vào
Eclipse, chọn File > Import > Existing Android Code into
Workspace.
4. Cửa sổ hiện ra chọn Browser và dẫn đến thư mục
“ActionBarSherlockLib” như hình dưới bên dưới. check vào mục “Copy project into
workspace”, rồi chọn OK.
5. Sau khi nhúng xong ta sẽ có 1 project
“ActionBarSherlockLib”, chọn src và xem có bị lỗi không nếu lỗi như hình
6. Nếu
lỗi thì click phải project chọn Project. Chọn tiếp Java Compiler và chỉnh mục “Compiler compliance level” thành
1.6 như hình
Nhúng thư viện ActionBarSherlock vào project
7. Tạo
một project mới. Click phải project chọn Properties > Android >Add > chọn
ActionBarSherlockLib > Apply > OK.
Mở file java chính, sửa
class thành kế thừa từ SherlockActivity . Nếu OnCreateOptionMenu
báo lỗi thì bỏ thư viện
import
android.view.Menu;
8. 8.Nhúng
các thư viện :
import
com.actionbarsherlock.app.SherlockActivity;
import
com.actionbarsherlock.view.Menu;
import
com.actionbarsherlock.view.MenuItem;
import
com.actionbarsherlock.view.MenuItem.OnMenuItemClickListener;
9. Bỏ
hàm onCreateOptionMenu cũ đi
10. Thêm
3 hàm mới như sau:
// Capture first menu button click
OnMenuItemClickListener HelpButtonClickListener = new
OnMenuItemClickListener() {
public boolean onMenuItemClick(MenuItem
item) {
// Create a simple toast message
Toast.makeText(MainActivity.this, "Help
Button", Toast.LENGTH_SHORT)
.show();
// Do something else
return false;
}
};
// Capture second menu button click
OnMenuItemClickListener LikeButtonClickListener = new
OnMenuItemClickListener() {
public boolean
onMenuItemClick(MenuItem item) {
// Create a simple toast message
Toast.makeText(MainActivity.this, "Like
Button", Toast.LENGTH_SHORT)
.show();
// Do something else
return false;
}
};
// Capture third menu button click
OnMenuItemClickListener ExitButtonClickListener = new
OnMenuItemClickListener() {
public boolean
onMenuItemClick(MenuItem item) {
// Create a simple toast message
Toast.makeText(MainActivity.this, "Exit
Button", Toast.LENGTH_SHORT)
.show();
// Do something else
return false;
}
};
@Override
public boolean
onCreateOptionsMenu(Menu menu) {
// First Menu Button
menu.add("Help")
.setOnMenuItemClickListener(this.HelpButtonClickListener)
.setIcon(R.drawable.ic_launcher) // Set the menu icon
.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM);
// Second Menu Button
menu.add("Like")
.setOnMenuItemClickListener(this.LikeButtonClickListener)
.setIcon(R.drawable.ic_launcher) // Set the menu icon
.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM);
// Third Menu Button
menu.add("Exit")
.setOnMenuItemClickListener(this.ExitButtonClickListener)
.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM);
return super.onCreateOptionsMenu(menu);
}
11. Mở
androidmanifest.xml lên trong phần application sửa theme lại thành
Them.Sherlock và trong activity thêm thuộc tính
android:uiOptions=”splitActionBarWhenNarrow” (để hiển actionbar tại cuối của
trang) như bên dưới.
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/Theme.Sherlock"
>
<activity
android:name="com.example.testactionbarsherlock.MainActivity"
android:label="@string/app_name"
android:uiOptions="splitActionBarWhenNarrow"
>
<intent-filter>
<action android:name="android.intent.action.MAIN"
/>
<category android:name="android.intent.category.LAUNCHER"
/>
</intent-filter>
</activity>
</application>
Download full source Click Here
that's great tutorial , but one thing , please check your download link , it's no longer exits https://uploads.disquscdn.com/images/95963ab9b23c2496c3e838e14de7a661ef388ca6ccfa6116e1df4cc731a88129.png
ReplyDelete