我想为android创建简单的计算器,并且在显示长方程时遇到问题。一切都好(一行,水平滚动),但我看不到行尾(总是看到行的开头)。是否可以将其自动滚动到最新字符?
Example:
Hello there
...lo there
--------
-
<EditText
android:id="@+id/etDisplay"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="4"
android:clickable="false"
android:cursorVisible="false"
android:ems="10"
android:focusable="false"
android:focusableInTouchMode="false"
android:gravity="right"
android:textSize="15sp"
android:scrollHorizontally="true"
android:singleLine="true"
android:ellipsize="end"
android:hint="0." />
答案 0 :(得分:1)
试试这个:
EditText editText = (EditText) findViewById(R.id.editText1);
editText.setSelection(editText.getText().length());
答案 1 :(得分:0)
通过设置为ellipsize
的{{1}}属性,(正如评论中所建议的)“官方”方式。如果它不起作用,可能是因为这个属性有点棘手,这意味着它有一些情况要发生才能工作(例如,end
)。
您可能希望看到this,这在我遇到此问题时帮助了我。
答案 2 :(得分:0)
请尝试以下方法将光标置于EditText
的末尾。
EditText etDisplay=(EditText) findViewById(R.id.etDisplay);
etDisplay.setSelection(etDisplay.gettext().length());