2014年7月16日水曜日

【アプリ開発】TextViewの小ネタ(Tips)

TextViewの便利な設定やちょっとした小技をまとめていきます☆



URLやメールアドレスの自動リンク設定


    // 自動的にリンクを生成するように設定
    TextView csLinkedTextView = new TextView(this);
    csLinkedTextView.setText("URL:http://www.takahara-books.com/Android/");
    csLinkedTextView.setAutoLinkMask(Linkify.ALL);




フォントの指定


    // ビューに表示するフォントを指定
    TextView csFontTextView = new TextView(this);
    csFontTextView.setText("サンプル");
    csFontTextView.setTypeface(Typeface.SERIF, Typeface.BOLD_ITALIC);




自動補完の機能追加


    // 候補に表示される文字列
    String[] strAutoWordlist = new String[]{
        "Cupcake",
        "Cute",
        "Donut",
        "Eclair",
        "Froyo",
        "Gingerbread",
        "Honeycomb",
        "IceCreamSandwich",
        "Kitkat"
    }

    // アダプタを作成
    ArrayAdapter adapterAuto = new ArrayAdapter(
        this,
        android.R.layout.simple_dropdown_item_1line,
        strAutoWordlist
    );

    // AutoCompleteTextViewインスタンスを作成
    AutoCompleteTextView csAutoCompTextView = new AutoCompleteTextView(this);

    // アダプタをセット
    csAutoCompTextView.setAdapter(adapterAuto);




2014年6月13日金曜日

【アプリ活用】DevAppsDirect

icon DevAppsDirect

GitHubなんかで公開されている数多くのライブラリのサンプルを実際にアプリ内でダウンロードして実行できるデモアプリです。全部確認してみましたが、自分のアプリにも取り入れたい物が結構ありましたので、いずれ使っていきたいですね。

動作している端末によっては、デモの内起動できないものもありますが、デモ自体は随時更新されているので、日々新しいライブラリを確認することができてとても便利です☆


今回その中で、簡単に組み込めそうで今後使っていきたいと思っているものを紹介していきます(^O^)/




①PagedDragDropGrid


このライブラリはグリッドで画像等を表示し、アイテムを長押しするとそのアイテムを別な場所に
移動することができます。自動で並び替えをせず、ユーザーが好きに並び順を決めたい場合に
使えるかと思います。

データフォルダでは自動で並び替えているため使いドコロが今のところありませんが、
いずれ新しいアプリででも使用してみたいライブラリです(^^)


対応OS:Android2.2(API 8)以上



②Showcase View




最近色々なアプリでみかけるようになったライブラリですね。
ヘルプやチュートリアルなどで、操作の説明するときなどに使われています。
ボタンを強調してテキストで説明したり、アニメーションによる解説、強調位置を移動させて順々に説明することができます。

使える用途も多いかと思いますし、初回のチュートリアルなんかで丁寧に解説したいときに取り入れていきたいなと思っています。

できれば説明なしに直感で使えるアプリにできることが理想ですけど、
機能を増やすとどうしても説明が必要になってきますしね(^^;



③ArchMenu


画面上には2つのボタンがありますが、左上のボタンをタッチするとボタンからみぎにメニューが飛び出します。
その下のボタンをタッチすると右上にメニューがそれぞれ飛び出してきます。

NEXUS5では解像度の関係でメニューが小さく表示されてしまっているようですが、調整できれば
ビジュアル的にもよさ気なので、ゲーム等のアプリを作った際には試してみたいライブラリです。

色々ライブラリを見つけてて思うのですが、使いドコロを考えるのが難しいですよね(^^;

対応OS:Android 2.0以上

2014年5月28日水曜日

【アプリ開発】アイコンに多言語のテキスト追加

アイコン等の画像を用意するとき、テキスト付きのアイコンを用意する場合があると思います。

以前にも【アプリ開発】画像への描画について書きましたが、今回はボタン用のアイコンに
多言語のテキストを描画してわざわざ多言語用のアイコンを用意せずにアプリで利用しようという
方法になります(^^)

自分もよくテキスト付きのアイコンを使っていたのですが、
日本語以外の言語に対応する場合、他の言語用のアイコンを用意する必要が出てしまい、
とても面倒でした(´・ω・`)

なので、テキストなしのアイコンのみ用意して、
プログラム内で画像にテキストを描画したものをBitmapとして使う方法がとても便利でしたので、
紹介していきます♪




用意するアイコン

最近データフォルダで追加したアイコンになりますが、
データフォルダで複数選択時、画面下に表示するテキスト無しのアイコンになります。


データフォルダでの複数選択時

 


アイコンにテキストを描画してBitmapとして使用しています。
最初に用意したテキスト無しのアイコンだけで他言語用のアイコンを作成できるため、
個別に各言語用のアイコンを用意する必要がありません。




描画処理

以下の関数に読み込んだアイコンのBitmapと書き込みたいテキストを渡して、
テキストの色とサイズを指定すれば、画像の下部にテキストを追加できます。