タグ

2013年5月14日のブックマーク (2件)

  • Android 画面の縦横切り替え時に元の画面を保存

    画面の縦横が切り替わると、Activity は一度終了(onPause(), onStop(), onDestroy() )させられちゃいます。 (Activity が foreground や visibleだった時は、新たなインスタンス(前のインスタンスがonSaveInstanceState メソッドで作った savedInstance を伴って)が作られます) どうしてそうなるかと言うと、 デバイスのコンフィグレーション(画面の向き、入力デバイス、言語など) が変更されたら、UIはそのコンフィグレーションにマッチするように更新 する必要があるからなんです。 例えば、縦用のレイアウトと横用のレイアウトが用意されている場合は、 リソースの再取得が必要になりますよね。 でも、コンフィグレーションの変更があっても Activity の再スタートしたくない場合はどうすればいいのでしょう? そ

  • リフレクションをつかってメソッドを呼び出す | TechBooster

    Javaにはreflectionと呼ばれる機能があります。クラスからフィールド、メソッド情報を取得するためのインターフェイスです。 取得したメソッドは実行でき、Androidではhideメソッドを使う際に応用出来ます。当然ながら、Android SDKのAPIとして公開されていないhideメソッドを使うことはリスクを伴います。 引数が変わったり、急に無くなってりするかもしれません(サポート対象外なので当然ですね)。 また、リフレクションを使って属性を変更し、Privateメソッド/フィールドにアクセスすることもできるため、こちらはUnitTestのときに威力を発揮します。 リフレクションを使う reflectionはjava.lang.reflectパッケージとしてサポートされており、動的に実行するメソッドを変えることも出来るので大変便利な機能です。 ただし、記事の内容を使ってhideA

    リフレクションをつかってメソッドを呼び出す | TechBooster
    kz_s
    kz_s 2013/05/14
    非公開APIを使う際に用いるリフレクションの解説