2011-09-14 197 views
3

我爲我的EditText創建了一個可繪製背景,但文字顯示在圖像邊框中。我通過將'scrollX'設置爲-12dip來解決這個問題,並且這在圖形佈局查看器(圖1)中似乎是Eclipse中的詞。但是在設備上它仍然通過圖像顯示。如果有問題,我已經通過xml文件引用了我的背景。Android EditText偏移文本?

In Eclipse and a screenshot http://img28.imageshack.us/img28/9954/nieuwbitmapafbeelding.png

是的,我知道第二張圖是不同的,但是這只是因爲我的觀點集中,問題就依然存在,即使我無焦點的方式。 :。'(

EDIT
我現在完全重拍的圖像(多個),並用於draw9patch文本偏移是固定的,然而,由於我在我的圖像中使用的垂直梯度,我所選擇的所有像素(減去實際的邊框),以防止有一個部分漸變 - >拉伸的純色部分 - >漸變。現在,可繪製背景的高度總是保持很大。

這是如何通常完成的,如果有漸變在圖像中?可能如果您創建的圖像很小,您將無法獲得非常平滑的漸變效果。
我該如何解決我的問題,該如何解決?

回答

0

只是一個建議,不是一個解決方案......

您可以使用RelativeLayout的,而在XML中,使用像alignParentBotton或alignParentLeft類似的東西,而不是絕對位置協調員的某些屬性。如果你使用絕對協調員,有時,你的用戶界面在不同的設備上看起來不同。

+0

我已經在使用相對佈局。我只需要在edittext框內的文字稍微向右。 – usealbarazer

8

如果您在EditText中使用android:paddingLeft=""屬性,它將在其內部移動TextView超過指定數量的像素。

例子:

android:paddingLeft="30dp"將文本向右移動30密度獨立像素。

2

您是如何創建背景圖片的?如果這是完整的形象,那麼這不是最好的方式來做到這一點。

您應該創建一個9補丁圖像作爲背景; http://developer.android.com/guide/developing/tools/draw9patch.html

+0

他應該這樣做的原則,但這不是他得到移位文本的原因。我認爲這是因爲他左側的圖像比默認的「EditText」圖像長,所以邊界更靠右。如果他的墊子調整,它應該修復它。 – DeeV

+0

編輯我的問題。 – usealbarazer

+0

更好地接受這個答案,如果它是正確的,然後問一個新的問題。不應編輯現有問題以提出新問題。 – C0deAttack

1

如果使用editText.setPadding(),它可能會讓您爲文本移動所需的間距。儘管如此,它也可能將填充應用於背景資源。但試試吧