Talal Haider Ответов: 0

Как исправить "не удается разрешить метод findviewbyid", не используя фрагмент


Я использую findviewbyid но это не работает.Я дал идентификатор в xml-файле по имени rootView .Я тоже создал textview чтобы отобразить текст в этом упражнении, но он не работает.Пожалуйста помочь...ниже приведен код
package com.example.android.miwok;

    import android.support.v7.app.AppCompatActivity;
    import android.os.Bundle;
    import android.view.View;
    import android.widget.LinearLayout;
    import android.widget.TextView;
    
    import java.util.ArrayList;
    
    public class NumbersActivity extends AppCompatActivity {
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_numbers);
            // array created
    
            /*String[] words= new String[10];
            words[0]="one";
            words[1]="two";
            words[2]="three";
            words[3]="four";
            words[4]="five";
            words[5]="six";
            words[6]="seven";
            words[7]="eight";
            words[8]="nine";
            words[9]="ten";*/
    
            // arraylist created
    
            ArrayList<string> words =new ArrayList<string>();
            words.add("one");
            words.add("two");
            words.add("three");
            words.add("four");
            words.add("five");
            words.add("six");
            words.add("seven");
            words.add("eight");
            words.add("nine");
            words.add("ten");
    
            LinearLayout rootView=(LinearLayout)findViewById(R.id.rootView);
            TextView wordView=new TextView(this);
            wordView.setText(words.get(0));
            rootView.addView(wordView);
            return rootView;
    
            // logs created
    
            /*Log.v("NumbersActivity", "Word at index 0: "+ words.get(0));
            Log.v("NumbersActivity","Word at index 1: "+ words.get(1));
            Log.v("NumbersActivity","Word at index 2: "+ words.get(2));
            Log.v("NumbersActivity","Word at index 3: "+ words.get(3));
            Log.v("NumbersActivity","Word at index 4: "+ words.get(4));
            Log.v("NumbersActivity","Word at index 5: "+ words.get(5));
            Log.v("NumbersActivity","Word at index 6: "+ words.get(6));
            Log.v("NumbersActivity","Word at index 7: "+ words.get(7));
            Log.v("NumbersActivity","Word at index 8: "+ words.get(8));
            Log.v("NumbersActivity","Word at index 9: "+ words.get(9));*/
    
    
    
        }
    }


XML
<?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:id="@+id/rootView"
        android:orientation="vertical"
        tools:context=".NumbersActivity">


Что я уже пробовал:

я исследовал и всегда находил код, в котором использовались фрагменты, но я не использую фрагмент.

David Crow

Похоже, вы хотите получить родительский элемент какого-то элемента управления (который вы не показывали) в своем файле макета. Вызов findViewById() на этом дочернем элементе управления, а затем позвоните getParent() пока не найдешь R.id.rootView.

0 Ответов