2016-12-09 19 views
0

対応するアダプタでリストビューを定義して、リストビューに文字列を追加しようとしています。 Howevewr、私のlistviewはnullとして来る。コードは次のとおりです。 -ListViewがフラグメント内でnullになる

public class CategoryFragment extends Fragment { 
.... 
.... 
@Override 
public View onCreateView(LayoutInflater inflater, ViewGroup container, 
         Bundle savedInstanceState) { 


    ListView listView = (ListView) getActivity().findViewById(R.id.cat_vacancies); 
    listAdapter = new ArrayAdapter<String>(getActivity(),android.R.layout.simple_list_item_2); 
    listView.setAdapter(listAdapter); 

.... 

} 
} 

この時点で何が間違っていますか?

次のように私のフラグメントのxmlがある

(私は、問題の診断に役立つかもしれないと思う関連する部分のみを追加した)

<RelativeLayout> 

    <ListView 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:id="@+id/cat_vacancies"> 

    </ListView> 

</RelativeLayout> 

P.S.これは、私が知る限り、愚かな間違いですが、私はまだ完全にはアンドロイドを完全に把握していないので、私の問題を言い訳してください。

+1

()'あなたがそれでリストビューを持っていレイアウトを膨らませる必要があります。 –

+0

これをチェックすると、問題を解決するのに役立つかもしれません。http://stackoverflow.com/questions/17778291/listview-returning-null-using-fragment – HsRaja

答えて

1
@Override 
public View onCreateView(LayoutInflater inflater, ViewGroup container, 
         Bundle savedInstanceState) { 

View view=inflater.inflate(R.layout.[layout id], container, false); 
    ListView listView = (ListView) view.findViewById(R.id.cat_vacancies); 
retrun view; 
} 
+0

あなたの問題は解決しました –

1

てみ聖霊降臨祭そのようonCreateView `で

public View onCreateView(LayoutInflater inflater, ViewGroup container, 
         Bundle savedInstanceState) { 
View view = inflater.inflate(R.layout.yourFragmentXml, container, false); 

    ListView listView = (ListView) view.findViewById(R.id.cat_vacancies); 
    listAdapter = new ArrayAdapter<String>(getActivity(),android.R.layout.simple_list_item_2); 
    listView.setAdapter(listAdapter); 

.... 

} 
+0

@Surya Prakash Kushawah同じ回答を投稿しないでください。 –

+0

同じ時間投稿の差は両方とも –

+0

@AkshayBhat私たちは私たちが同じ回答を与えているのか分からなかった時に私たちは答えを出そうとしています。だから私は同じ答えを与える場合は申し訳ありません。 –

関連する問題