findViewById возвращает ноль при перемещении в файл библиотеки - PullRequest
1 голос
/ 17 сентября 2010

Я новичок в Java и Android.У меня есть кусок кода, который используется для нескольких действий, поэтому я переместил его в свою библиотеку .java файл.Тем не менее, теперь мой findViewById возвращает ноль, где они возвращали нужные вещи, когда они были частью основного файла Activity с вызовами onCreate () и setContentView ().Как мне заставить его работать внутри моей библиотеки?

Вызов из класса Activity:

helper.popupControl (getListView (), getBaseContext (), "on");

Код в феврале:

public class Helper extends ListActivity {
public void popupControl (View v, Context context, String on_off) {
    Animation aFilm = AnimationUtils.loadAnimation(context, R.anim.fade_in);  
    aFilm.reset();

    View vFilm = (View) v.findViewById(R.id.gray_out_film);

    if(vFilm==null) { 
        Toast maxToast = Toast.makeText(context, "View is null! "+R.id.gray_out_film+", View:"+v.toString(), Toast.LENGTH_LONG);
        maxToast.setGravity(Gravity.CENTER, 0, 0);
        maxToast.show(); 
    } else {
        Toast maxToast = Toast.makeText(context, "View is not null!", Toast.LENGTH_SHORT);
        maxToast.setGravity(Gravity.CENTER, 0, 0);
        maxToast.show();
    }
}
}

Ответы [ 3 ]

1 голос
/ 04 ноября 2010

Звоните Activity.setContentView(int resID) перед звонком findViewbyId()

0 голосов
/ 03 июля 2012

Это случилось со мной, и решение было удалить main.xml из нового проекта.Каким-то образом это мешало main.xml из библиотечного проекта, хотя я имел в виду полное имя (например: library.package.R.layout.main).

0 голосов
/ 17 сентября 2010

То, что вы пытаетесь сделать, кажется «непристойным», но вот как это будет сделано.

Вам нужно будет передать View из Activity ... findViewbyId () является его функцией-членом.

Если вы предоставите пример кода, я мог бы быть более полезным.

Редактировать: Путать Context с View. Oops!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...