Android идентифицирует планшет - PullRequest
0 голосов
/ 15 февраля 2011

Итак, есть ли какой-нибудь простой способ идентифицировать нажатую табличку?У меня есть таблица со статическими данными, как меню.Когда пользователь нажимает на любую таблицу, я хочу начать указанное действие.Я гуглил пару часов, но все, кажется, используют представление в текстовом свойстве tablerows, чтобы идентифицировать его, что плохо, если вы переводите приложение.Я попытался найти какое-то свойство getIndex в TableLayouit, но безуспешно, и свойство views .getId бесполезно.

Я полагаю, что решение состоит в том, чтобы в каждой таблице были специфические onclicklisteners, но это приведет к большому количеству ненужных) код и там должно быть лучшее решение?

С уважением

1 Ответ

1 голос
/ 15 февраля 2011

если вы выполняете свою деятельность как расширение ListView() и помещаете свои параметры в список, вы можете переопределить метод public void onListItemClick (ListView родитель, View v, int position, long id) { } и атрибут позиции этого метода является int, который указывает, на какую строку вы нажимаете это решение, которое, я уверен, на самом деле работает, поэтому, если ваша таблица не слишком сложна, я предлагаю вам составить список и переопределить этот метод!

хорошо, я попробую другой, так как этот вызывает у вас другие проблемы, вы могли бы сделать что-то вроде этого:

в onCreate():

firstTextVIew = (TextView) findViewById(R.id.firstText);

 firstTextView.setOnClickListener(this);

secondTextVIew = (TextView) findViewById(R.id.secondText);

 secondTextView.setOnClickListener(this);

после onCreate():

public void onClick(View v) {       

    /*make a list of cases for any text view, where __TextView is the name you gave to the textview when you made the getViewById() on the start of the activity*/
        if(v == firstTextView){         
            //start activity
        }
    if(v == secondTextView){        
            //start activity
        }   
    }
...