Uploaded image for project: 'Titanium SDK/CLI'
  1. Titanium SDK/CLI
  2. TIMOB-28425

Android: Change "plain" Ti.UI.Picker to use native spinners

    Details

    • Story Points:
      7

      Description

      Summary:
      When a Ti.UI.Picker of type PICKER_TYPE_PLAIN is set up with "useSpinner" set to true, it uses a custom spinner which looks just like the old iOS spinner widget. It should use Android's native Java NumberPicker view which would support colors defined in theme, support dark/light theme switching, and correclty DPI scale.

      Test:
      Build and run SpinnerSimpleTest.js on Android.

      Current Result:
      Displays a custom picker that looks like the old iOS spinner widget. Does not support colors defined by Android theme. Does not support dark/light theme.

      Expected Result:
      We should change it to use native Android spinners which appear as...

      Note:
      Once we replace it with the native NumberPicker Java view, we can remove the custom "kankan" spinner Java classes from our SDK here...
      https://github.com/appcelerator/titanium_mobile/tree/master/android/modules/ui/src/java/kankan/wheel/widget

        Attachments

        1. Spinner-Dark-New.png
          Spinner-Dark-New.png
          411 kB
        2. Spinner-Dark-Old.png
          Spinner-Dark-Old.png
          430 kB
        3. Spinner-Light-New.png
          Spinner-Light-New.png
          410 kB
        4. Spinner-Light-Old.png
          Spinner-Light-Old.png
          432 kB
        5. SpinnerSimpleTest.js
          0.9 kB

          Activity

            People

            • Assignee:
              jquick Joshua Quick
              Reporter:
              jquick Joshua Quick
              Reviewer:
              Gary Mathews
            • Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Backbone Issue Sync

                • Backbone Issue Sync is enabled for your project, but we do not have any synchronization info for this issue.

                  Git Integration