Help us understand the problem. What is going on with this article?

iOSっぽいUIに使うコンポーネント

More than 5 years have passed since last update.
  • UINavigationController
    基本的にはstartActivity
    場合によってはViewFlipperやViewPagerで実装も可能
    戻るボタンはsetDisplayHomeAsUpEnabled

  • UINavigationBar
    4.0以降はActionBar
    それ以前はActionBarSherlock

  • presentViewController:animated / dismissViewController:animated
    アニメーションを定義してViewFlipperと共に使う。具体的にはタイマーでアニメーション終了後に
    ビューを切り替える。
     アニメーションの参考: android-3d-flip-view-transition
    Fragmentと一緒に使うと、Fragmentが非同期でViewを初期化するために(viewController.viewでviewDidLoadが同期で呼び出される)iOSと同じフローだと上手くいかない。

  • UIDatePicker
    Fusion-Dateslider

  • UIPickerView
    android.widget.NumberPickerを使い、formatterForTagでラベルを返す。

  • UITableViewのsectionHeader/Footer
    android-pull-to-refreshとAmazingListViewを相当カスタマイズして使ったが、(スクロール時テーブル上部に残る、内部にコンポーネントを持つ)sectionHeaderは一つが限界だった。気が向いたら複数セクション実装試みる。

  • pullToRefresh
    android-pull-to-refreshを使うが、(恐らくAndroid自体の)バグが多いので火だるまになる。
    と思ったらhttps://github.com/chrisbanes/ActionBar-PullToRefresh
    というのがある。使ってみる。

  • UITableView全体
    上の2つなどを色々修正して使うが、機種によっては意味不明なタイミングで沢山タッチイベントを出したりするので、リストビューの状態を正常にたもつのが大変。

  • animateWithDuration
    描画にはアニメーションを用いて、アニメーション終了時にセットしたタイマーで実際のプロパティを調節したりする。(確か所々必要だったはず)

  • その他
    端末依存でわけの分からないところでNPEが出たりするので、むしろUIの外見よりプログラム自体が複雑化しないように気を配るほうが大切な気がして、無理にiOSに合わせようと頑張るのは余りお奨めできない。

skonb
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away