android-fragments 如何在Android中显示小写的文本?

jdzmm42g  于 2022-11-14  发布在  Android
关注(0)|答案(6)|浏览(193)

我尝试在Android中实现选项卡。我可以在Android中实现选项卡,但我的Android文本显示在大写字母。我不想显示我的选项卡文本在大写字母。我们可以显示文本在相同的格式中给出的代码
这是我清单文件

<resources>

    <!-- Base application theme. -->
    <style name="AppTheme" parent="android:Theme.Holo">
        <!-- Customize your theme here. -->
        <item name="android:textAppearance">?android:attr/textAppearanceSmall</item>
        <item name="android:textAllCaps">false</item>
    </style>

</resources>

清单文件

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.naveen.tabsfavourite" >

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name=".MainActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>

Java代码

import android.app.ActionBar;
import android.os.Bundle;
import android.support.v4.app.FragmentActivity;
import android.support.v4.view.ViewPager;

public class MainActivity extends FragmentActivity implements ActionBar.TabListener {
    ViewPager viewPager;
    FragmentpagerAdapter fragmentpagerAdapter;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        final ActionBar actionBar =getActionBar();
        viewPager = (ViewPager) findViewById(R.id.pager);
        fragmentpagerAdapter =new FragmentpagerAdapter(getSupportFragmentManager());
        viewPager.setAdapter(fragmentpagerAdapter);
        actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
        actionBar.addTab(actionBar.newTab().setText("Stations").setTabListener(this));
        actionBar.addTab(actionBar.newTab().setText("fav Station").setTabListener(this));
        viewPager.setOnPageChangeListener(new ViewPager.OnPageChangeListener() {
            @Override
            public void onPageScrolled(int i, float v, int i1) {

            }

            @Override
            public void onPageSelected(int i) {
            actionBar.setSelectedNavigationItem(i);
            }

            @Override
            public void onPageScrollStateChanged(int i) {

            }
        });

    }

    @Override
    public void onTabSelected(ActionBar.Tab tab, android.app.FragmentTransaction ft) {

        viewPager.setCurrentItem(tab.getPosition());

    }

    @Override
    public void onTabUnselected(ActionBar.Tab tab, android.app.FragmentTransaction ft) {

    }

    @Override
    public void onTabReselected(ActionBar.Tab tab, android.app.FragmentTransaction ft) {

    }
}
uidvcgyl

uidvcgyl1#

你有两个选择
1-你可以动态地设置-如果你不确定文本是否是小写的,你必须使用string.toLowerCase()将其转换为小写;并且您必须设置TextView的行为

textView.setText(yourString.toLowerCase());
textView.setAllCaps(false);

2-您可以在xml本身中设置的行为

<TextView
    ....
    ....
    android:textAllCaps = "false"
    />
zdwk9cvp

zdwk9cvp2#

使用Design Support Library〉选项卡
在styles.xml中为您的Tablayout添加样式

<style name="TabTextAppearance" parent="TextAppearance.Design.Tab">
    <item name="textAllCaps">false</item>
</style>

然后将属性添加为:

<android.support.design.widget.TabLayout
        android:id="@+id/tabs"
        app:tabTextAppearance="@style/TabTextAppearance"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" />

我测试过了。会成功的。
谢谢

jvlzgdj9

jvlzgdj93#

你可以尝试以下任何一种方法,但是你已经尝试了我在下面提到的第一种方法,你可以尝试另一种方法

  • 在布局中使用android:textAllCaps=“false”-v21
  • 检查您的全大写风格
<style name="Theme.CustomTheme" parent="@style/Theme.AppCompat.Light.DarkActionBar">
<item name="android:textAppearanceButton">@style/CustomTheme.ButtonTextAppearance</item>
</style>

<style name="CustomTheme.ButtonTextAppearance" parent="@style/Base.TextAppearance.AppCompat.Button">
<item name="textAllCaps">false</item>
<item name="android:textAllCaps">false</item>
</style>
zf2sa74q

zf2sa74q4#

请尝试以下代码。希望您的问题得到解决

TextView tv =  (TextView) mTabHost.getTabWidget().getChildAt(index).findViewById(android.R.id.title); 
   tv.setAllCaps(false);
a0x5cqrl

a0x5cqrl5#

将字符串转换为小写的Kotlin扩展函数

val name = "ABC"
val lowercaseName = name.lowercase()
b1uwtaje

b1uwtaje6#

请确保您在strings.xml中以小写形式写入文本。或者使用string.toLowerCase()将其转换为小写形式,如上面提到的droidev

相关问题