8

私は何日もこれに取り組んできましたが、あきらめようとしているので、どんな助けも大歓迎です!

AndroidアプリにsimonVT numberpickerを実装しようとしています。Android にはまったく新しいので、ライブラリを含め、このライブラリを参照し、すべてをコンパイルすることは、それ自体が数日間の使命でした。これで、最終的にすべてのコンパイルが完了し、実行時に次のエラーが発生します。

04-06 10:58:37.126: E/AndroidRuntime(14324): java.lang.RuntimeException: 
Unable to start activity ComponentInfo{com.example.goalminder/com.example.goalminder.AddGoal}:
android.view.InflateException: Binary XML file line #81: 
Error inflating class net.simonvt.numberpicker.NumberPicker

これが私のレイアウトのオープニングです:

<RelativeLayout  xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res/net.simonvt.numberpicker"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

注意- 上記の 'xmlns:app' 部分には黄色の警告マーカーが付いています - これは使用されていません。これを別のstackoverflow answer reごとに含めました。同様の問題。この提案を思いとどまらせるために残しました。

numberpicker の xml は次のとおりです。

<net.simonvt.numberpicker.NumberPicker          
    android:id="@+id/dayPicker"
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:layout_marginLeft="50dp"
    android:layout_marginRight="10dp"
    android:layout_weight="1"/>

Simon の指示に従って、テーマ ファイルにテーマを含めました。どのような名前を付けるべきかよくわからなかったので、「NumberPicker」と名付けました。

<resources>

    <!-- Copy one of these attributes to your own theme (choose either dark or light).
        <item name="numberPickerStyle">@style/NPWidget.Holo.NumberPicker</item>
       <item name="numberPickerStyle">@style/NPWidget.Holo.Light.NumberPicker</item>
    -->
    <style name="NumberPicker" parent="android:Theme">
        <item name="numberPickerStyle">@style/NPWidget.Holo.NumberPicker</item>
    </style>

    <style name="NumberPicker" parent="android:Theme.Light">
        <item name="numberPickerStyle">@style/NPWidget.Holo.Light.NumberPicker</item>
    </style>

</resources>

また、アプリケーションの子として Android マニフェストに以下を追加しました。

 <activity 
     android:name="net.simonvt.numberpicker.Numberpicker" />
 <activity 
     android:name="net.simonvt.numberpicker.Scroller" />

私はstackoverflowのいたるところにいたので、上にあるのは、私が見たすべてのスキャッターガンアプローチです。前に述べたように、私はこれに悩まされており、標準の醜いリストを実装しようとしています。

NB - Numberpicker のネイティブ android 実装でこれらすべてが機能しました。ただし、Simon VT のバックポート バージョンを使用したいのですが、39.7% の分布があると思われる Gingerbread を含む API < 11 をサポートする予定です。ここまでさかのぼってサポートする必要がないと思われる場合は、お知らせください。

4

5 に答える 5

11

AndroidManifest.xml でアクティビティのテーマを追加する必要があります: 例:

<activity android:name="yourActivity" android:theme="@style/SampleTheme.Light"/>
于 2013-04-12T10:43:52.607 に答える
3

独自のプロジェクト用にテーマを作成したくない場合は、numberpicker のソース コードに対して次の操作を行って、既定のテーマ NPWidget_Holo_numberPicker を使用するように設定できます。

コンストラクターを次のように置き換えます

public NumberPicker(Context context, AttributeSet attrs) {
    this(context, attrs, R.style.NPWidget_Holo_NumberPicker);
}

次に、TypedArray attributesArray の割り当てを次のように変更します。

    TypedArray attributesArray = context.obtainStyledAttributes(
            attrs, R.styleable.NumberPicker, 0, defStyle);
于 2014-01-03T07:43:02.493 に答える
0

net.simonvt.numberpicker.NumberPicker を com.your.package.NumberPicker に置き換えてみてください。

于 2013-07-09T07:15:42.160 に答える
0

私は実質的に同じ問題を抱えていましたが、エラーが発生していました

11-18 21:13:18.627: W/ResourceType(13799): No package identifier when getting value for resource number 0x00000000

SimonVT のスタイルをコピー/貼り付けするだけだったので (Paul Lammertsma が上に示したように) 、スタイル項目を自分のスタイル定義に追加する必要があることに最終的に気付きました

<style parent="@android:style/Theme.Holo.NoActionBar.Fullscreen" name="NoActionBar">
    <item name="numberPickerStyle">@style/NPWidget.Holo.NumberPicker</item>
</style>

その後、まだ機能しない後、themes.xml ファイルを完全に見逃していたことに気付きました (API レベルごとに 3 つ持っています)。

于 2013-11-18T21:34:41.783 に答える