2013-02-19 62 views
0
android:textStyle="italic" 

這不會將editText斜體。如何使您的EditText斜體?

<EditText 
      android:id="@+id/editTxt" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:textStyle="italic" 
      android:singleLine="true" 
      android:textSize="14dp" 
      android:background="@null" 
      android:gravity="center" 
      android:inputType="textNoSuggestions" 

      > 
     </EditText> 

你能幫忙嗎?提前謝謝你。

我現在發現Galaxy Note 2出現了問題,當您嘗試在editText中斜體顯示文本時。 2013年4月18日

回答

2

設置文本爲斜體,你可以做到以下幾點:

EditText.setText(Html.fromHtml("<small><i>" + "Text Hint Here" + "</i></small>"));

如果你想斜體文字是一個暗示 - 當EditText上是空的 - 例如,你必須實現的方法檢查文本長度,當它等於零時,應用上面的代碼。

試試這個更新選項: -

創建一個新的風格: -

<style name="editStyle"> 
      <item name="android:textStyle">italic</item> 
     <item name="android:textColor">#000000</item> 
    </style> 

,並使用這種方式 - 它的工作原理:)

<EditText 
     android:id="@+id/editTxt" 
     style="@style/editStyle" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:gravity="center" 
     android:hint="EditText" 
     android:singleLine="true" 
     android:textSize="14dp" > 
</EditText> 

快照: - Working snap

+0

這是一個斜體字符串,但是一旦你擦除了字符串,就不會再變爲斜體。之後是純文本。 – coolcool1994 2013-02-19 06:11:13

+0

@ coolcool1994 - 檢查我更新的答案。有用。 – SudoRahul 2013-02-19 06:26:03

+0

更新後的版本不起作用。我通過更改樣式的id來檢查樣式是否正確鏈接,但editText字符串不是斜體。 – coolcool1994 2013-02-19 06:31:13

2

試試這個

youredittext.setTypeface(null,Typeface.ITALIC); 
+0

我試過這個,這沒有工作:(我認爲這隻適用於iTextView。 – coolcool1994 2013-02-19 06:03:54

+0

它會在設備上工作....並且也嘗試下載斜體字體並且喜歡這個Typeface.createFromAsset(getAssets(),「Your font file」); editText.setTypeface(italic); – Pragnani 2013-02-19 06:09:15

+0

我有三星Galaxy Note 2。斜體在那裏不起作用。 – coolcool1994 2013-02-19 06:13:27

1

內串

<string name="username"><i>Username</i></string> 

xml文件..

<EditText android:hint="@string/username" /> 
2

的EditText TextView的從

editText.setTypeface(null, Typeface.BOLD_ITALIC); 
editText.setTypeface(null, Typeface.BOLD); 
editText.setTypeface(null, Typeface.ITALIC); 
繼承

使用你想要的。

UPDATE

你使用自定義字體?嘗試

mTextView.setTypeface(Typeface.defaultFromStyle(Typeface.ITALIC), Typeface.ITALIC) 

編輯 我認爲它的android平臺的問題。

Issue 22867: Incorrect layout preview when ITALIC text style used

它不會出現在佈局的圖形表示,但是當你建立並運行應用程序正常工作。

更新: 如果您想預覽設計XML佈局就用

android:typeface="serif" 

在這種android:textStyle="italic"作品。文本將在圖形佈局編輯器中以斜體顯示。

它只適用於此serif字體

+0

這太奇怪了。 android:textStyle =「bold」和editText.setTypeface(null,Typeface.BOLD);工作,但這些不起作用:editText.setTypeface(null,Typeface.ITALIC);和android:textStyle =「italic」 – coolcool1994 2013-02-19 06:09:46

+0

我已更新我的答案,請檢查 – Sree 2013-02-19 06:14:33

+0

我不使用自定義字體。我使用任何字體,默認它。我沒有改變字體。一旦我得到答案,我會+1所有的答案,因爲你們正在努力。代碼行也不適用於我。 – coolcool1994 2013-02-19 06:15:01