2012-02-10 26 views
12

Tôi có hoạt động này liệt kê một số thông tin mà tôi cung cấp nút làm mới. Cách tôi làm mới nó (có lẽ không phải là cách tốt nhất bởi bất kỳ phương tiện) là chỉ cần khởi động các hoạt động trên một lần nữa. Để làm cho stack trở lại làm việc theo cách tôi cần nó để tôi cần phải vượt qua trong cờ FLAG_ACTIVITY_CLEAR_TOP với ý định và nó hoạt động tốt. Nhưng để cho ảo giác rằng thông tin đang làm mới thông tin trong hoạt động và không hoàn toàn khởi chạy lại, tôi cũng cần thêm cờ FLAG_ACTIVITY_NO_ANIMATION. Cho đến nay, tôi đã không thể có được hai lá cờ này để làm việc cùng nhau. Tôi đã thử các phương pháp sau:Chuyển nhiều cờ tới mục đích trong android

theIntent.setFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION+Intent.FLAG_ACTIVITY_CLEAR_TOP); theIntent.setFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION|Intent.FLAG_ACTIVITY_CLEAR_TOP); '

theIntent.setFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION); 
theIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); 

rõ ràng đầu hoạt động chính xác cho tất cả chúng nhưng các hình ảnh động vẫn còn đó. Mọi sự trợ giúp sẽ rất được trân trọng.

Trả lời

39

Sử dụng toán tử | để thiết lập nhiều cờ

theIntent.setFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION|Intent.FLAG_ACTIVITY_CLEAR_TOP); 
+0

Tôi cố gắng đó đã. Đó là phương pháp thứ 2. Không hoạt động. – lancex

+0

không hoạt động khi bạn muốn mở máy ảnh mà không cần xoay hiệu ứng màn hình ... – deadfish

+0

@ 100Kg, lances thử áp dụng ' ' đến hoạt động của bạn trong manifest: '' – Saqib

3

Bạn có thể thử sử dụng

overridePendingTransition(0,0); 

ngay lập tức sau khi gọi startActivity();

+0

Tôi đã sử dụng nhưng bây giờ nó hiển thị màn hình màu đen trước và sau đó nhắm mục tiêu một. – RobinHood

5

Sử dụng addFlags() để bạn có thể thêm nhiều cờ vào mục đích.

i.addFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION); 
i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); 
4

Đối với folks có thể sẽ được đưa ra một ứng dụng Android trong Kotlin

coolIntent.flags = Intent.FLAG_ACTIVITY_SINGLE_TOP or Intent.FLAG_ACTIVITY_NEW_TASK 
Các vấn đề liên quan