OPはすでに彼の解決策を得ていますが、残りの部分ではbool
の値をxmlに入れて、別のリソースディレクトリに設定することができます。
<receiver
android:label="@string/app_widget_small"
android:enabled="@bool/is_pre_api_11">
<!-- App Widget Stuff Here -->
</receiver>
<receiver
android:label="@string/app_widget_large"
android:enabled="@bool/is_pre_api_11">
<!-- App Widget Stuff Here -->
</receiver>
<receiver
android:label="@string/app_widget_resizeable"
android:enabled="@bool/is_post_api_11">
<!-- App Widget Stuff Here -->
</receiver>
そして/res/values/attrs.xml
中:
その後
<resources>
<bool name="is_pre_api_11">true</bool>
<bool name="is_post_api_11">false</bool>
</resources>
/res/values-v11/attrs.xml
中:
は、だからあなたAndroidManifest
は次のようなものになります
<resources>
<bool name="is_pre_api_11">false</bool>
<bool name="is_post_api_11">true</bool>
</resources>
今、あなたのAPI 10を、以下2を持っていますアプリウィジェット(大小)とAPI 11以上私は一つのサイズ変更可能なアプリウィジェットを持っています。
ありがとうございます。この解決策は素晴らしいです。代わりに 'appwidget-provider'で' android:enabled'属性を使うことができれば良いでしょうが、これは必要です。:) – davidk
@CommonsWareでは簡単なアイデアを出してくれますか? – Harshid
'xml'ファイルをブール値で作成するのはなぜでしょうか? 'res/values-v11 /'(またはそれを除外する必要があるもの)でブール値をfalseに設定し、 'AndroidManifest'で' android:enabled = "@ bool/enable_listview_appwidget" 'のブール値を参照しますか? – xbakesx