作者热门文章
- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我的要求是在 TextView 中以彩虹色文本和粗体等多色显示文本,我该如何实现。我需要使用 java 代码动态显示它们。
TextView text=new TextView(context);
text.setText(status);
text.setBackgroundResource(R.drawable.grd_btn);
text.setGravity(Gravity.CENTER);
text.setPadding(2, 0, 2, 0);
text.setTypeface(font2,Typeface.BOLD);
text.setTextColor(Color.WHITE);
最佳答案
很抱歉耽误了我的 friend 。必须解决您的问题,这需要一段时间。所以首先输出,
所以假设上面显示的是您需要的输出,这里是它的代码。
xml文件
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:text="@string/hello_world"/>
res 文件(比如 strings.xml)
<color name="violet">#9400D3</color>
<color name="indigo">#4B0082</color>
<color name="blue">#0000FF</color>
<color name="green">#00FF00</color>
<color name="yellow">#FFFF00</color>
<color name="orange">#FF7F00</color>
<color name="red">#FF0000</color>
你的java文件
TextView textView = (TextView)findViewById(R.id.textView1);
Shader textShader=new LinearGradient(0, 0, 0, 20,
new int[]{getResources().getColor(R.color.violet),getResources().getColor(R.color.indigo),
getResources().getColor(R.color.blue),
getResources().getColor(R.color.green),
getResources().getColor(R.color.yellow),
getResources().getColor(R.color.orange),
getResources().getColor(R.color.red)},
new float[]{0,0.2f,0.4f,0.6f,0.8f,0.9f,1}, TileMode.CLAMP);
textView.getPaint().setShader(textShader);
textView.setTextSize(20);
就是这样。对于您大胆的风格,请点击我之前回答的以下链接,
关于java - 如何在我的 TextView 中以粗体和多色显示文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14438371/
下面是我用来制作 1px 文本描边轮廓的代码。但是如何使轮廓变粗呢?如果我只是用“5px”替换所有“1px”,结果看起来很疯狂。 HTML Hello! CSS .element { color:
我是一名优秀的程序员,十分优秀!