2017-04-21 8 views
1

CalendarアプリケーションでshowNativePicker()を使用しています。日付を選択すると、現在の日付のみが表示されるので、showNativePicker()メソッドで選択した日付を表示するにはどうすればできますか?前もって感謝します。コード名showNativePicker()メソッドの問題

これは私のコードです: -

try{ 
      Display.getInstance().showNativePicker(Display.PICKER_TYPE_DATE,PivDisplayCalendar.this, value, metaData); 
      Storage.getInstance().writeObject("Date", value); 
      Log.p(value.toString()); 
      Dialog.show("Selected Date", value.toString(), "OK", ""); 
    } 
      catch(Exception e) { 
         e.printStackTrace(); 
      } 
+0

[クラスのドキュメント](https://www.codenameone.com/javadoc/com/codename1/ui/Display.html#showNativePicker-intを返すように、この変換/キャストする必要があるかもしれません-com.codename1.ui.Component-java.lang.Object-java.lang.Object-)は、値を返すメソッドを示します。 'value'をパラメータとして渡すことは、変数' value'の後続の状態には何の影響もありません。 – spacepickle

+0

しかし、ログに値を表示すると、現在の日付が表示されます。 @spacepickle –

+0

私は 'value = ...'のようなものを使うことを意味します。なぜこのメソッドを直接使うべきではないかについては、[this answer](http://stackoverflow.com/a/23622491/2842227)を参照してください。 – spacepickle

答えて

2

あなたがここにshowNativePicker()

への呼び出しによって返された値をキャプチャしていないが、コードの例の一部です。 2行目の代入文に注目してください。あなたはこの方法がObject

try { 
    value = Display.getInstance().showNativePicker(Display.PICKER_TYPE_DATE,PivDisplayCalendar.this, value, metaData); 
    Storage.getInstance().writeObject("Date", value); 
    Log.p(value.toString()); 
    Dialog.show("Selected Date", value.toString(), "OK", ""); 
} catch(Exception e) { 
    e.printStackTrace(); 
}