1

このサイトからカスタム テーブルをダウンロードします。クリックしたセルの値を表示したい。

TableFixHeaders table = (TableFixHeaders) findViewById(R.id.table_1);
table.setAdapter(new MyAdapter(this));   
table.setOnLongClickListener(new OnLongClickListener(){
        @Override
    public boolean onLongClick(View v) {
        TextView Cl = (TextView) table.getChildAt(1);
        Toast.makeText(this, Cl.getText().toString(), Toast.LENGTH_LONG).show();
                return false;
        }
});

問題は、メイン アクティビティのイベントを傍受できないことです。

4

3 に答える 3

0

また、スクロールする列と行を備えたこの非常に優れたウィジェットもダウンロードしました。また、特定のセルをクリックしたときに応答を取得する必要もありました。来ませんでしたが、ここで理由を見つけました:
ではTableFixHeaders.java、モジュールOnTouchEvent(MotionEvent event)の先頭に次の行を追加し ます。

super.onTouchEvent(event);  

この呼び出しにより、他のタッチ メソッドが確実に呼び出されます。したがって、ロングクリックでも機能するはずです! convertView が初めて膨張したときに
、モジュールの特定のビュー (セル) にクリック ハンドラを追加しました。GetView(int row, int column, View convertView, ViewGroup parent)次に、異なるセル (列ヘッダー、データセルなど) に対して異なるハンドラーを持つことができます。

于 2013-07-29T11:45:28.470 に答える