Tôi đang di chuyển ActionBar của ứng dụng sang ActionBarSherlock và tôi đang cố gắng tùy chỉnh nền bằng nền lát. Tôi đang thử nghiệm mã của mình trên 2 thiết bị thực, một thiết bị chạy Android 2.1 và một thiết bị khác đang chạy Android 4.0.4.Nền ActionBarSherlock không lặp lại trên các phiên bản ICS trước
Mã bên dưới đang hoạt động trên thiết bị ICS (nền lặp lại) nhưng không hoạt động trên nền Eclair (nền được kéo dài thay vì lặp lại). Tôi cũng đã thử nghiệm này trên giả lập Android 2.3 và nền không lặp lại quá. Có vẻ như tileMode="repeat"
chỉ hoạt động trên ICS.
themes.xml:
<style name="Theme.Opheodrys.Base" parent="Theme.Sherlock.Light">
<item name="android:actionBarStyle">@style/Opheodrys.Widget.ActionBar</item>
<item name="actionBarStyle">@style/Opheodrys.Widget.ActionBar</item>
</style>
<style name="Opheodrys.Widget.ActionBar" parent="Widget.Sherlock.Light.ActionBar">
<item name="android:background">@drawable/ab_background_pattern</item>
<item name="background">@drawable/ab_background_pattern</item>
</style>
ab_background_pattern.xml:
<?xml version="1.0" encoding="utf-8"?>
<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
android:src="@drawable/ab_background_tile"
android:tileMode="repeat"
tileMode="repeat" /> <!-- I've added this just in case, but it doesn't seem to be needed -->
Sau khi đăng câu hỏi này tôi đã đi qua lỗi đó và đang tìm kiếm một giải pháp về trường hợp đặc biệt này. Cảm ơn bạn đã viết mã. Tôi cho rằng đó là một vấn đề với ActionBarSherlock vì tôi có một drawable tương tự được áp dụng cho nền của một ImageView và tôi không bao giờ nhận thấy nó kéo dài ... –
Khách du lịch trong tương lai: Điều này hiện được tự động sửa bởi ABS. –