Java 在开始之前先把面包片拿出来
我是Android的初学者,正在尝试编写一个简单的应用程序。当进入片段时,单击“启动其他片段”按钮,以便:Java 在开始之前先把面包片拿出来,java,android,android-fragments,toast,Java,Android,Android Fragments,Toast,我是Android的初学者,正在尝试编写一个简单的应用程序。当进入片段时,单击“启动其他片段”按钮,以便: @Override public void onClick(View v) { new Handler(Looper.getMainLooper()).post(new Runnable() { @Override public void run() { Toast.makeText(getActivity(), "Hello
@Override
public void onClick(View v) {
new Handler(Looper.getMainLooper()).post(new Runnable() {
@Override
public void run() {
Toast.makeText(getActivity(), "Hello", Toast.LENGTH_SHORT).show();
FragmentTransaction transaction = getActivity().getSupportFragmentManager().beginTransaction();
secondFragment.removeAllViews();
transaction.replace(R.id.secondFragment, new DashBoardFragment());
transaction.commit();
}
});
}
但是在其他片段开始之后显示Hello Toast,但我希望在片段开始之前显示。在
toasting
之后在onClick
中尝试此操作:-
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
FragmentTransaction transaction = getActivity().getSupportFragmentManager().beginTransaction();
secondFragment.removeAllViews();
transaction.replace(R.id.secondFragment, new DashBoardFragment());
transaction.commit();
}
}, Toast.LENGTH_SHORT);
您的片段事务将在1500毫秒后发生(,因此您的toast消息将在事务发生之前弹出))
你的完全点击方法
@Override
public void onClick(View v) {
Toast.makeText(getActivity(), "Hello", Toast.LENGTH_SHORT).show();
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
FragmentTransaction transaction = getActivity().getSupportFragmentManager().beginTransaction();
secondFragment.removeAllViews();
transaction.replace(R.id.secondFragment, new DashBoardFragment());
transaction.commit();
}
}, Toast.LENGTH_SHORT);
}
在
烤后的一次点击试试这个:-
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
FragmentTransaction transaction = getActivity().getSupportFragmentManager().beginTransaction();
secondFragment.removeAllViews();
transaction.replace(R.id.secondFragment, new DashBoardFragment());
transaction.commit();
}
}, Toast.LENGTH_SHORT);
您的片段事务将在1500毫秒后发生(,因此您的toast消息将在事务发生之前弹出))
你的完全点击方法
@Override
public void onClick(View v) {
Toast.makeText(getActivity(), "Hello", Toast.LENGTH_SHORT).show();
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
FragmentTransaction transaction = getActivity().getSupportFragmentManager().beginTransaction();
secondFragment.removeAllViews();
transaction.replace(R.id.secondFragment, new DashBoardFragment());
transaction.commit();
}
}, Toast.LENGTH_SHORT);
}
为什么要使用处理程序
?此外,我认为一切都发生得如此之快,以至于你认为在片段开始之后会显示toast。为什么要使用处理程序?此外,我认为一切都发生得如此之快,以至于你认为在片段开始之后显示toast甚至更好,如果你用toast替换1500。LENGTH_SHORTtoast。LENGTH_SHORT
也将在片段事务@BasilBattikhiHow之后显示?toast完成后,它将替换片段:/都在不同的线程中运行..!!:)@BasilBattikhi和Toast都将同时运行。这是一个完美的解决方案+1如果用Toast替换1500,甚至更好。LENGTH_SHORTToast。LENGTH_SHORT
也将在片段事务@BasilBattikhiHow后显示?toast完成后,它将替换片段:/都在不同的线程中运行..!!:)@BasilBattikhi将同时运行这是一个完美的解决方案+1