嗨,我在我的应用程序中使用了滑动选项卡布局,一切都很好。我唯一不明白的是为什么我的标签文本是大写的。
我已经打印了选项卡在滑动选项卡类中获得的文本,它们不是大写的。我环顾四周,没有调用toUpperCase方法。
下面是设置文本的类的代码:
private void populateTabStrip() {
final PagerAdapter adapter = mViewPager.getAdapter();
final View.OnClickListener tabClickListener = new TabClickListener();
for (int i = 0; i < adapter.getCount(); i++) {
View tabView = null;
TextView tabTitleView = null;
if (mTabViewLayoutId != 0) {
// If there is a custom tab view layout id set, try and inflate it
tabView = LayoutInflater.from(getContext()).inflate(mTabViewLayoutId, mTabStrip,
false);
tabTitleView = (TextView) tabView.findViewById(mTabViewTextViewId);
}
if (tabView == null) {
tabView = createDefaultTabView(getContext());
}
if (tabTitleView == null && TextView.class.isInstance(tabView)) {
tabTitleView = (TextView) tabView;
}
if (mDistributeEvenly) {
LinearLayout.LayoutParams lp = (LinearLayout.LayoutParams) tabView.getLayoutParams();
lp.width = 0;
lp.weight = 1;
}
tabTitleView.setText(adapter.getPageTitle(i));
tabTitleView.setTextColor(getResources().getColor(R.color.da_blue));
tabView.setOnClickListener(tabClickListener);
String desc = mContentDescriptions.get(i, null);
if (desc != null) {
tabView.setContentDescription(desc);
}
mTabStrip.addView(tabView);
if (i == mViewPager.getCurrentItem()) {
tabView.setSelected(true);
}
}
}
我确信我可以通过一种风格做到这一点,但真的不确定使用哪一种。这是我的风格:
<resources>
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
<item name="android:actionBarTabTextStyle">@style/ActionBarTabTextStyle.Tabtheme</item>
<item name="actionBarTabTextStyle">@style/ActionBarTabTextStyle.Tabtheme</item>
</style>
<style name="ActionBarTabTextStyle.Tabtheme" parent="@android:style/Widget.Holo.ActionBar.TabText">
<item name="android:textAllCaps">false</item>
</style>
</resources>
只需添加此行选项卡TitleView.setAllCaps(false);
in filleTabStrip()
在createDefaultTabView()方法中找到了答案。
需要将textView.setAllCaps(true)更改为false。
protected TextView createDefaultTabView(Context context) {
TextView textView = new TextView(context);
textView.setGravity(Gravity.CENTER);
textView.setTextSize(TypedValue.COMPLEX_UNIT_SP, TAB_VIEW_TEXT_SIZE_SP);
textView.setLayoutParams(new LinearLayout.LayoutParams(
ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT));
TypedValue outValue = new TypedValue();
getContext().getTheme().resolveAttribute(android.R.attr.selectableItemBackground,
outValue, true);
textView.setBackgroundResource(outValue.resourceId);
textView.setAllCaps(false); **// Changed to false and it did the trick**
int padding = (int) (TAB_VIEW_PADDING_DIPS * getResources().getDisplayMetrics().density);
textView.setPadding(padding, padding, padding, padding);
return textView;
}
如果您使用“android.support.design.widget.TabLayout”,则需要设置<code>应用程序:tabTextAppearance=“@android:style/TextAppealence.Widgets.TabWidget”
我已经搜索了很多关于如何使用SlidengTablayout在片段之间进行通信的内容,但还没有找到一个好的答案。我知道使用ActionBar,但我想要的是androidLollipop使用SlidingTabLayout的新方式。我试过了-
我想创建一个应用程序,使用带有滑动视图的选项卡布局(类似于这样): 问题来了:我在网上到处找一个可以解释如何做这种事情的指南,但我所做的一切都对我不起作用。我在某个地方读到标签布局与Lollipop是不推荐的,所以我试图找到一个替代的方法来做我想做的事情,但什么也没有。我试图创建的每个选项卡布局应用程序在测试时都以崩溃告终,我认为这是由于的某些原因,总是因为选项卡在Lollipop中是不推荐的。我
自定义选项卡选择效果,包括:点击tab产生高光效果,tab下面的横条滑动到选择的tab,对应的视图也进行滑动显示。 [Code4App.com]
我是Android新手,因此面临这样的问题。 fragment_main: 所以我需要这些标签有不同内容的网格布局。
我有5个标签在查看页。默认第一个选项卡被选中。第一个选项卡打开系统默认的摄像机。然后我从第一个移动到第二个,第二个移动到第三个,等等…但问题是当我从第三,第四或第五个标签返回到第二个标签时,它打开了相机,但我没有相机在第二个标签。它在第一页。为什么会发生这种情况?我不明白... camerafragment.java
本文向大家介绍JS实现同一个网页布局滑动门和TAB选项卡实例,包括了JS实现同一个网页布局滑动门和TAB选项卡实例的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了JS实现同一个网页布局滑动门和TAB选项卡。分享给大家供大家参考。具体如下: 这里演示同一个网页布局滑动门和TAB选项卡效果,其实滑动门和选项卡没有太大的区别,无非是鼠标动作的不同而已,但是有时候在同一个网页中布局两个以上的选项卡