字符串对于 Toast 而言太长 - 如何显示字符串结尾而不是开头
String is too long for Toast - How to display end of string rather than beginning
好的,这可能是一个非常简单的问题。我有一个要在 toast 中显示的字符串值。例如...
String tempstring = "qwertyuiopasdfghjklzxcvbnm123456789012345678901234567890";
toast = Toast.makeText(getApplicationContext(), tempstring , Toast.LENGTH_SHORT);
toast.setGravity(Gravity.CENTER, 0, 0);
toast.show();
我遇到的问题是我程序中的 tempstring 通常会变得非常大,而且文本量有时比 toast 可以显示的还大。发生这种情况时,toast 会显示开头的文本和结尾的剪辑。我希望 toast 始终显示字符串的末尾,但如果文本太多而无法在 toast 中一次显示,则切断开头。请问有什么简单的方法吗?
这就是您所需要的。它是在 gmail 应用程序中实现的。
这样你就可以自定义 toast 的布局了,你想要多少行都行,不用
甚至切割东西。
好的,我自己解决了这个问题。
不太难...
答案是为吐司创建自定义视图。首先像这样创建一个 XML 文件...注意重要的一点是重力设置。
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/custom_toast_layout_id"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#000"
android:orientation="horizontal"
android:padding="5dp"
>
<TextView
android:id="@+id/text"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:textColor="#FFF"
android:gravity="bottom"
/>
</LinearLayout>
然后像这样从你的 toast 中引用视图...
LayoutInflater inflater = getLayoutInflater();
View layout = inflater.inflate(R.layout.custom_toast,
(ViewGroup) findViewById(R.id.custom_toast_layout_id));
// set a message
TextView text = (TextView) layout.findViewById(R.id.text);
text.setText(themessage);
toast = Toast.makeText(getApplicationContext(),
themessage, Toast.LENGTH_LONG);
toast.setView(layout);
toast.show();
任务完成...
好的,这可能是一个非常简单的问题。我有一个要在 toast 中显示的字符串值。例如...
String tempstring = "qwertyuiopasdfghjklzxcvbnm123456789012345678901234567890";
toast = Toast.makeText(getApplicationContext(), tempstring , Toast.LENGTH_SHORT);
toast.setGravity(Gravity.CENTER, 0, 0);
toast.show();
我遇到的问题是我程序中的 tempstring 通常会变得非常大,而且文本量有时比 toast 可以显示的还大。发生这种情况时,toast 会显示开头的文本和结尾的剪辑。我希望 toast 始终显示字符串的末尾,但如果文本太多而无法在 toast 中一次显示,则切断开头。请问有什么简单的方法吗?
这就是您所需要的。它是在 gmail 应用程序中实现的。
这样你就可以自定义 toast 的布局了,你想要多少行都行,不用 甚至切割东西。
好的,我自己解决了这个问题。
不太难...
答案是为吐司创建自定义视图。首先像这样创建一个 XML 文件...注意重要的一点是重力设置。
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/custom_toast_layout_id"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#000"
android:orientation="horizontal"
android:padding="5dp"
>
<TextView
android:id="@+id/text"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:textColor="#FFF"
android:gravity="bottom"
/>
</LinearLayout>
然后像这样从你的 toast 中引用视图...
LayoutInflater inflater = getLayoutInflater();
View layout = inflater.inflate(R.layout.custom_toast,
(ViewGroup) findViewById(R.id.custom_toast_layout_id));
// set a message
TextView text = (TextView) layout.findViewById(R.id.text);
text.setText(themessage);
toast = Toast.makeText(getApplicationContext(),
themessage, Toast.LENGTH_LONG);
toast.setView(layout);
toast.show();
任务完成...