Androidハンドラーの使用sendEmptyMessageDelayedおよびsendEmptyMessage



Use Android Handler Sendemptymessagedelayed



sendEmptyMessageDelayed通常、操作を遅らせるために時間を使用します

10例、デモとして遅延ジャンプがあります



public class MainActivity extends AppCompatActivity implements Handler.Callback { private Handler handler @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) handler = new Handler(this) handler.sendEmptyMessageDelayed(1, 10 * 1000) } @Override public boolean handleMessage(Message msg) { switch (msg.what) { case 1: startActivity(new Intent(MainActivity.this, OfferActivity.class)) break } return false } @Override protected void onDestroy() { super.onDestroy() if (handler != null) { handler.removeCallbacksAndMessages(null) handler = null } } }

sendEmptyMessageは通常、次のサンプルコードで特定の操作を行う子スレッドを必要とします。

public class OfferActivity extends AppCompatActivity implements Handler.Callback { Handler handler @Override protected void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState) setContentView(R.layout.offer_activity_layout) handler = new Handler(this) findViewById(R.id.txt).setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { handler.sendEmptyMessage(999) } }) } @Override public boolean handleMessage(Message msg) { switch (msg.what) { case 999: Toast.makeText (this, 'start download', Toast.LENGTH_SHORT) .show () break } return false } @Override protected void onDestroy() { super.onDestroy() if (handler != null) { handler.removeCallbacksAndMessages(null) handler = null } } }

これらは彼らの使用済みです、助けたいと思っています、、、、



ソースアドレスの希望