我刚接触Android (在Visual Studio工作了20年)。我需要创建一个可点击的控件,具有2行文本(一个较小的字体在按钮顶部的标题和一个较大的字体行的值-将张贴图像,但我不被允许)。较大字体的大小将缩放,以便该值适合控件。我非常确定我需要对按钮控件进行子类化,但不确定在这种情况下该如何子类化。我找到的所有样品似乎都不符合要求。
使用VB.Net很容易做到这一点,但当我尝试使用Android时,我被难住了。非常感谢您的帮助。对于其他人来说,这可能也是一个方便的控件。谢谢
发布于 2011-03-10 13:06:29
您可以尝试在代码中使用Spannable,如下所示:
public class Test extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button but = (Button) findViewById(R.id.button1);
String butText= "Line 1\nLine 2";
but.setText(formatString(butText));
}
private Spannable formatString(String str) {
int startSpan = str.indexOf("\n");
int endSpan = str.length();
Spannable spanString = null;
spanString = new SpannableString(str);
spanString.setSpan(new TextAppearanceSpan(this,
R.style.custompoint), startSpan, endSpan,
Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
return spanString;
}
}
其中你有一个样式'custompoint‘
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style
name="custompoint">
<item name="android:textSize">24sp</item>
<item name="android:textStyle">bold</item>
</style>
</resources>
https://stackoverflow.com/questions/5259511
复制相似问题