2011-10-28 32 views
5

Tôi đang tạo một widget có hai nút. Một trong số họ cập nhật nội dung của tiện ích và tiện ích thứ hai phải khởi chạy hoạt động.Hai nút với PendingIntents - Widget

Tôi có hai PendingIntent cho mỗi hành động, nhưng tôi không thể làm cho cả hai hoạt động. Nếu một công trình khác thì không.

Tôi đã sửa đổi mã và không thể hiểu có gì sai.

Mọi trợ giúp sẽ được đánh giá cao.

Đây là mã.

RemoteViews controls = new RemoteViews(context.getPackageName(), R.layout.miwidget); 

    Intent intent = new Intent("actony.com.ACTUALIZAR_WIDGET"); 
    intent.putExtra(AppWidgetManager.EXTRA_APPWIDGET_ID, widgetId); 


    Intent intentSettings = new Intent(); 
    intentSettings.setClass(context,WidgetConfig.class); 


    PendingIntent pendingIntentUpdate = PendingIntent.getBroadcast(context, widgetId, intent, PendingIntent.FLAG_UPDATE_CURRENT); 
    controls.setOnClickPendingIntent(R.id.BtnActualizar, pendingIntentUpdate); 

    PendingIntent pendingIntentSettings = PendingIntent.getActivity(context, 0, intentSettings, 0); 
    controls.setOnClickPendingIntent(R.id.botonSettings, pendingIntentSettings); 

Trả lời

2

thử thêm getActivity PendingIntent.FLAG_UPDATE_CURRENT là tốt ...

PendingIntent pendingIntentSettings = 
     PendingIntent.getActivity(context, 0, intentSettings, PendingIntent.FLAG_UPDATE_CURRENT); 

và nếu của nhiều phụ tùng là có thể thêm widgetId có quá.

Đảm bảo cả hai hoạt động/chương trình phát sóng được liệt kê trong tệp kê khai.

Hơn nữa, hãy thử tạo tiếp cận mục đích với constructor này:

Intent intent = new Intent(context,ACTUALIZAR_WIDGET.class); 
Intent intentSettings = new Intent(context,WidgetConfig.class); 

thêm nhập khẩu nếu cần thiết.

Hy vọng một số điều đó sẽ giúp bạn làm việc tiện ích.

1

Kiểm tra liên kết này để biết nút đã được nhấn khi có hai hoặc nút ở một widget ..

https://stackoverflow.com/a/10733049/1331593

Nó sẽ làm việc ... NẾU nó không hoạt động xin vui lòng cho tôi biết vấn đề là gì ...

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