2015-10-13 42 views
0

我想在此活動中5秒後打開速率對話框......應該在什麼位置輸入源代碼以及我應該在哪裏應用?5秒後顯示對話框

public class Link extends AppCompatActivity 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     getSupportActionBar().setDisplayShowHomeEnabled(true); 
     getSupportActionBar().setLogo(R.drawable.ic_launcher); 
     getSupportActionBar().setDisplayUseLogoEnabled(true); 
     setContentView(R.layout.link); 

    } 
} 

而且它的速度對話框

public class Rate extends Dialog{ 

    Button rate,bad,flag,lol,late; 
    Activity c; 

    public Rate(Context context, myOnClickListener myclick) { 
     super(context); 
     this.myListener = myclick; 
    } 
    public Rate(Activity activity) 
    { 
     super(activity); 
     c = activity; 
    } 
    public myOnClickListener myListener; 

    // This is my interface // 
    public interface myOnClickListener { 
     void onButtonClick(); 
    } 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     requestWindowFeature(Window.FEATURE_NO_TITLE); 
     setContentView(R.layout.rate); 

     rate = (Button)findViewById(R.id.btnYes); 
     bad = (Button)findViewById(R.id.ratebad); 
     flag = (Button)findViewById(R.id.flags); 
     lol =(Button)findViewById(R.id.lolli); 
     late = (Button)findViewById(R.id.later); 

     rate.setOnClickListener(new View.OnClickListener() { 

      @Override 
      public void onClick(View v) { 
       // TODO Auto-generated method stub 

       Intent i = new Intent("android.intent.action.VIEW", Uri.parse("market://details?id=com.aio.amar.tricks")); 
       c.startActivity(i); 
      } 
     }); 

     bad.setOnClickListener(new View.OnClickListener() { 

      @Override 
      public void onClick(View v) { 
       // TODO Auto-generated method stub 

       Intent a = new Intent("android.intent.action.SEND"); 
       a.setType("text/html"); 
       a.putExtra("android.intent.extra.EMAIL", new String[] {c.getString(R.string.mail_feedback_emai)}); 
       a.putExtra("android.intent.extra.SUBJECT", c.getString(R.string.mail_feedback_subjec)); 
       a.putExtra("android.intent.extra.TEXT", c.getString(R.string.mail_feedback_messag)); 
       c.startActivity(Intent.createChooser(a, c.getString(R.string.title_send_feedbac))); 
      } 
     }); 

     flag.setOnClickListener(new View.OnClickListener() { 

      @Override 
      public void onClick(View v) { 
       // TODO Auto-generated method stub 

       Intent b = new Intent("android.intent.action.SEND"); 
       b.setType("text/html"); 
       b.putExtra("android.intent.extra.EMAIL", new String[] {c.getString(R.string. 


mail_feedback_email)}); 
       b.putExtra("android.intent.extra.SUBJECT", c.getString(R.string.mail_feedback_subject)); 
       b.putExtra("android.intent.extra.TEXT", c.getString(R.string.mail_feedback_message)); 
       c.startActivity(Intent.createChooser(b, c.getString(R.string.title_send_feedback))); 

      } 
     }); 
     lol.setOnClickListener(new View.OnClickListener() { 

      @Override 
      public void onClick(View v) { 
       // TODO Auto-generated method stub 

       Intent i = new Intent("android.intent.action.VIEW", Uri.parse("market://details?id=com.dfc.aef")); 
       c.startActivity(i); 

      } 
     }); 

     late.setOnClickListener(new View.OnClickListener() { 

      @Override 
      public void onClick(View v) { 
       // TODO Auto-generated method stub 
       dismiss(); 
      } 
     }); 

    } 

} 

回答

1

在一定的延遲後運行代碼,你可以使用一個Handler

final Handler handler = new Handler(); 
handler.postDelayed(new Runnable() { 
    @Override 
    public void run() { 
    // put some code 
    // it will run after 5000 milliseconds 
    } 
}, 5000); 

把它放在你onCreate方法

0

舉手像這樣結束你的onResume()方法

Handler handler = new Handler(); 
Runnable r = new Runnable() { 
    @Override 
    public void run() { 
     // Start Rate Dialog Box    
    } 
}; 
handler.postDelayed(r, 5000); //5000 ms = 5 seconds