TabWidget geçerli sekmeyi alt çizgi rengi
Kendisi için etkin bir TabWidget var ve stripLeft
ve 4*...*
mTabHost.getTabWidget().setStripEnabled(true);
mTabHost.getTabWidget().setRightStripDrawable(R.drawable.redline);
mTabHost.getTabWidget().setLeftStripDrawable(R.drawable.redline);
Bu resimde gördüğünüz gibi, bu alt satır değiştirmez seçili sekme rengi (TAB 2).
Nasıl alt satırında varsayılan mavi olan seçili sekme rengini değiştirmek şu an yapabilir miyim? Renkli (varsayılan AppTheme
styles.xml
. style) ayarlı mavi tahmin ediyorum
this cevap aradım ama rengini değiştirmek için nasıl bir şey ifade etmiyor...
CEVAP
Sekme göstergesi rengi here bulunan bir seçici drawable tarafından ayarlanması ve bu gibi görünüyor:
<!-- AOSP copyright notice can be found at the above link -->
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<!-- Non focused states -->
<item android:state_focused="false" android:state_selected="false" android:state_pressed="false" android:drawable="@drawable/tab_unselected_holo" />
<item android:state_focused="false" android:state_selected="true" android:state_pressed="false" android:drawable="@drawable/tab_selected_holo" />
<!-- Focused states -->
<item android:state_focused="true" android:state_selected="false" android:state_pressed="false" android:drawable="@drawable/tab_unselected_focused_holo" />
<item android:state_focused="true" android:state_selected="true" android:state_pressed="false" android:drawable="@drawable/tab_selected_focused_holo" />
<!-- Pressed -->
<!-- Non focused states -->
<item android:state_focused="false" android:state_selected="false" android:state_pressed="true" android:drawable="@drawable/tab_unselected_pressed_holo" />
<item android:state_focused="false" android:state_selected="true" android:state_pressed="true" android:drawable="@drawable/tab_selected_pressed_holo" />
<!-- Focused states -->
<item android:state_focused="true" android:state_selected="false" android:state_pressed="true" android:drawable="@drawable/tab_unselected_pressed_holo" />
<item android:state_focused="true" android:state_selected="true" android:state_pressed="true" android:drawable="@drawable/tab_selected_pressed_holo" />
</selector>
Seçici kullandığı drawables açık mavi renkli. Kendi renklendirilen sürümlerini bu drawables değiştirebilirsiniz. Orijinalleri böyle (aslı küçük, bağlantılar dahildir) bak:
- tab_unselected_holo
- tab_selected_holo
- tab_unselected_focused_holo
- tab_selected_focused_holo
- tab_unselected_pressed_holo
- tab_selected_pressed_holo
Yukarıdaki kopyalamak için drawables ile birlikte kendi projenize seçici isteyeceksiniz. Sonra istediğiniz ne olursa olsun drawables renklendirmek isteyeceksiniz. Sonra sekme göstergeleri için arka plan olarak seçici olarak ayarlamak istersiniz. Bu sekmeleri kurduktan sonra) gibi yapabilirsin:
TabHost host = (TabHost)view.findViewById(R.id.tab_host);
TabWidget widget = host.getTabWidget();
for(int i = 0; i < widget.getChildCount(); i ) {
View v = widget.getChildAt(i);
// Look for the title view to ensure this is an indicator and not a divider.
TextView tv = (TextView)v.findViewById(android.R.id.title);
if(tv == null) {
continue;
}
v.setBackgroundResource(R.drawable.your_tab_selector_drawable);
}
Arkaplan seçici ile kendi müşteri göstergesi düzeninizi ayarlayarak bunu yapmanın daha kolay bir yolu olabilir ama bu kolay benim için çalıştı.
Arka plan rengi:yok geçerli CSS?...
Jekyll - Otomatik olarak menü çubuğund...
Nasıl geçerli sekmeyi etkin sayfayı ye...
Nasıl bir tarayıcı penceresinde geçerl...
Java uyarı isimleri SuppressWarnings @...