ฉันสามารถคลิกปุ่มโดยทางโปรแกรมสำหรับความตั้งใจที่กำหนดไว้ล่วงหน้าได้หรือไม่


103

ฉันต้องการให้คลิกปุ่มของความตั้งใจ ACTION_SEND ที่นี่ไม่จำเป็นต้องแสดง UI ฉันจะได้รับคลิกปุ่ม "ส่ง" จาก MMS-SMSProvider ใน Android หรือไม่?

คำตอบ:



46

หากปุ่มของคุณมีภาพเคลื่อนไหวใด ๆ คุณจะต้องทำการคลิกจากนั้นจึงทำให้แต่ละขั้นตอนไม่ถูกต้องหลังจากดำเนินการคลิก วิธีการมีดังนี้

 button.performClick();
 button.setPressed(true); 
 button.invalidate(); 
 button.setPressed(false); 
 button.invalidate(); 

ในบางครั้งฉันต้องแนะนำการหน่วงเวลาเพื่อให้แอนิเมชั่นแสดง แบบนี้:

 //initiate the button
 button.performClick();
 button.setPressed(true); 
 button.invalidate(); 
 // delay completion till animation completes
 button.postDelayed(new Runnable() {  //delay button 
     public void run() {  
        button.setPressed(false); 
        button.invalidate();
        //any other associated action
     }
 }, 800);  // .8secs delay time

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.