Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/192.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 字符串数组中的Android粗体文本_Java_Android_Android Viewpager_Arrays - Fatal编程技术网

Java 字符串数组中的Android粗体文本

Java 字符串数组中的Android粗体文本,java,android,android-viewpager,arrays,Java,Android,Android Viewpager,Arrays,我需要在字符串数组中加粗一些文本,其中每个项目都在ViewPager中使用。我正在使用getTextArray()从xml文件中获取格式化文本,但无法将其转换为字符串,以便在ViewPager中使用 这是我最近尝试的,但它去掉了格式: CharSequence[] arr = getResources().getTextArray(R.array.array); String[] arrString = new String[arr.length]; int i=0; for(CharSequ

我需要在字符串数组中加粗一些文本,其中每个项目都在ViewPager中使用。我正在使用
getTextArray()
从xml文件中获取格式化文本,但无法将其转换为
字符串,以便在ViewPager中使用

这是我最近尝试的,但它去掉了格式:

CharSequence[] arr = getResources().getTextArray(R.array.array);

String[] arrString = new String[arr.length];
int i=0;
for(CharSequence ch: arr){
    arrString[i++] = ch.toString(); 
}

for (String s : arrString) {
    mArrayList.add(s);

}
XML

<?xml version="1.0" encoding="utf-8"?>
<resources>

    <string-array name="array">
        <item><b>bold text</b>|<i>italic text</i></item>
        <item>Second Item</item>
        <item>Thrid Item</item>
    </string-array>
</resources>

粗体文本|斜体文本
第二项
第三项
查看寻呼机(如果相关)

ViewPager mViewPager;
ArrayList<String> mArrayList = new ArrayList<String>();
mViewPager = (ViewPager) findViewById(R.id.pager);
MyAdapter mAdapter = new MyAdapter(context, mArrayList);
mViewPager.setAdapter(mAdapter);
ViewPager mViewPager;
ArrayList mArrayList=新建ArrayList();
mViewPager=(ViewPager)findViewById(R.id.pager);
MyAdapter mAdapter=新的MyAdapter(上下文,婚姻列表);
mViewPager.setAdapter(mAdapter);

非常感谢您的建议,谢谢

String
对象不能包含嵌入式标记(即字体、颜色、样式)。使用此代码时:

for(CharSequence ch: arr){
    arrString[i++] = ch.toString(); 
}
您正在丢失资源中包含的标记信息


您只需更改
适配器
即可接收
数组列表
,并将这些值直接放入文本视图中(或适配器当前放置它们的位置)。

为什么不让适配器接收一个
数组列表
,而不是
数组列表
,这样就行了。我以前试过,但这次我能让其他一切正常工作,非常感谢!不确定是否有办法删除一个问题..我会写一个简短的答案,然后你可以接受:)