2012-05-11 40 views
5

Tôi có câu hỏi trong Android khi tạo ứng dụng bản đồ google của mình.Đóng hoạt động từ một lớp học khác

Tôi đã một hoạt động như sau

public class MapCallActivity extends MapActivity { 
    classA class = new classA(this); 
    classA.callMethod(); 
} 

Các classA được định nghĩa như sau:

public class classA{ 
    public classA(Context context){ 
    this.myContext = context; 
} 

    void callMethod(){ 
     if (isFileValid) { 
     <do_something...>; 
     } else { 
     <call_the_activity's finish() method>; 
     } 
    } 
} 

Có cách nào mà tôi có thể làm <call_the_activity's finish() method> để các MapCallActivity đóng cửa?

Mọi trợ giúp đều được đánh giá cao!

Trả lời

27
public class classA{ 
    public classA(Context context){ 
     this.myContext = context; 
    } 

    void callMethod(){ 
     if(isFileValid){ 

     }else{ 
      ((Activity)myContext).finish(); 
     } 
    } 
} 
+0

Không có cách nào để truyền bất kỳ đối tượng nào để đóng trực tiếp? – curlyreggie

+0

nếu Lớp khác có sự hoạt động của Hoạt động này. nó có thể. Nhưng hoạt động hoặc dịch vụ khác có thể không. –

+0

Cảm ơn sự giúp đỡ đó. Tôi đã đặt lại câu hỏi để nó rõ ràng hơn bây giờ. Mã của bạn vẫn hoạt động được không? – curlyreggie

Các vấn đề liên quan