web-dev-qa-db-ja.com

Android CheckBoxをタップするのが難しい

CheckBoxウィジェットをタップしやすくするいくつかの良い方法は何ですかAndroidアプリ?アプリではbothCheckBoxand事後および次へのCheckBoxはタップ可能であり、個別の機能を提供します。CheckBoxをターゲットにするのは難しいことに気付きました人差し指で、私は細い指を持っています。

コンテキストでは、このCheckBoxListViewアダプターの右側にあります。アイテムの左側には2つのTextViewがあります。 ListViewは買い物リストです。ユーザーは買い物リストのアイテムをタップしてダイアログに詳細な説明を表示し、CheckBoxをタップしてアイテムを購入済みとしてマークします。したがって、詳細ダイアログを表示する適切な方法がないため、CheckBoxを切り替えるためにアイテム全体をタップ可能にすることはできません。

CheckBoxトグルをトリガーするCheckBoxを囲むある種のゴーストウィジェットを作成して、指のターゲットを大きくすることを検討しましたが、UIのデザインは優れていますか?ベストプラクティスのソリューションはありますか?

4
Jacob

TouchDelegateを使用して、チェックボックス自体のクリック可能な領域を増やすことができます。あなたはSOそれを行う方法を示す-- ここ で答えを見つけることができます。

コピー貼り付け:

final View parent = (View) delegate.getParent();
parent.post( new Runnable() {
    // Post in the parent's message queue to make sure the parent
    // lays out its children before we call getHitRect()
    public void run() {
        final Rect r = new Rect();
        delegate.getHitRect(r);
        r.top -= 4;
        r.bottom += 4;
        parent.setTouchDelegate( new TouchDelegate( r , delegate));
    }
});
3
Jon O