2013-11-27 82 views
0

我已经制作了一个简单的按钮,它在EditText中添加数字“1”。EditText使用按钮添加文本时水平滚动

下面是XML代码

<EditText 
    android:id="@+id/edittext1" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
/> 

<Button 
    android:id="@+id/button1" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="1" 
    android:onClick="Btn1" 
/> 

和Java代码

public void Btn1(View v){ 
    EditText edittext1 = (EditText) findViewById(R.id.edittext1); 
    String getText = edittext1.getText().toString(); 
    show_results.setText(getText+"1"); 
} 

当我在写EditText与键盘,它会自动滚动水平和显示的最后一个字符。但是当我按下按钮时,它会添加文本,但不会滚动(所以只有第一个字符可见)。

有没有解决方案?

+0

要滚动查看? – Naddy

+0

@Naddy它不是一个视图。这是EditText – Enve

+0

改正你的基本队友。 EditText扩展了扩展View的TextView。无论如何,你想滚动EditText?这对我来说不是很清楚。 – Naddy

回答

1

试试这个:

public void Btn1(View v){ 
    EditText edittext1 = (EditText) findViewById(R.id.edittext1); 
    String getText = edittext1.getText().toString(); 
    show_results.setText(getText+"1"); // not really sure what show_results is, 
             // but I suppose it's another EditText 
    show_results.setSelection(edittext1.getText().length()); 
} 
+0

这段代码应该做什么? – Enve

+0

'setSelection':http://developer.android.com/reference/android/widget/EditText.html#setSelection(int)它导致http://developer.android.com/reference/android/text/Selection。 html#setSelection(android.text.Spannable,int)其中声明'将光标移动到偏移索引。' - 我可能已经很了解你的问题,但我希望你的光标在插入文本的末尾(即使你的编辑文本的高度是固定的,视图将始终滚动 - 我编辑的答案是模式特定的) – Spiri