我是Android新手(Visual Studio已有20年)。我需要創建一個可點擊的控件,其中包含兩行文本(一個標題的按鈕頂部有一個小字體,一個是值較大的字體行 - 會發布圖像,但我不允許)。較大字體的大小縮放以便該值適合控件。 我很確定我需要繼承按鈕控件,但不知道如何在這種情況下。我發現的所有樣本似乎都不符合法案。創建一個包含兩行文本的自定義按鈕
用VB.Net很容易做到這一點,但當我嘗試使用Android時,我很難過。非常感謝任何幫助。也可能是其他人的方便控制。 感謝
我是Android新手(Visual Studio已有20年)。我需要創建一個可點擊的控件,其中包含兩行文本(一個標題的按鈕頂部有一個小字體,一個是值較大的字體行 - 會發布圖像,但我不允許)。較大字體的大小縮放以便該值適合控件。 我很確定我需要繼承按鈕控件,但不知道如何在這種情況下。我發現的所有樣本似乎都不符合法案。創建一個包含兩行文本的自定義按鈕
用VB.Net很容易做到這一點,但當我嘗試使用Android時,我很難過。非常感謝任何幫助。也可能是其他人的方便控制。 感謝
你可以嘗試像代碼使用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>
我已經嘗試過,這個作品,不知道爲什麼OP沒有接受它作爲答案。 – 2013-02-05 17:54:13
@NickT它不工作,如果我使用可擴展的字符串html.fromHtml,效果消失? – 2013-04-17 07:57:43
你想控制至極的樣子按鈕或只是點擊控制? – RomaTTi 2011-03-10 14:21:06