總是報空指針,已經閉眼摸索好多天了,求大牛們幫忙指教
MainActivity
import?android.support.v7.app.AppCompatActivity;
import?android.os.Bundle;
import?android.support.v7.widget.LinearLayoutManager;
import?android.support.v7.widget.RecyclerView;
import?java.util.ArrayList;
import?java.util.List;
public?class?MainActivity?extends?AppCompatActivity?{
????private?RecyclerView?mRecyclerView;
????private?List<String>?mDatas;
????private?SimpleAdapter?mAdapter;
????@Override
????protected?void?onCreate(Bundle?savedInstanceState)?{
????????super.onCreate(savedInstanceState);
????????setContentView(R.layout.main);
????????initDatas();
????????initView();
????????mAdapter?=?new?SimpleAdapter(this,mDatas);
????????mRecyclerView.setAdapter(mAdapter);
????????LinearLayoutManager?linearLayoutManager?=?new?LinearLayoutManager(this,LinearLayoutManager.VERTICAL,false);
????????mRecyclerView.setLayoutManager(linearLayoutManager);
????}
????private?void?initView()?{
????????mRecyclerView?=?(RecyclerView)findViewById(R.id.id_recyclerview);
????}
????private?void?initDatas()?{
????????mDatas?=?new?ArrayList<String>();
????????for?(int?i?=?'A';i?<?'z';i++){
????????????mDatas.add(""+(char)i);
????????}
????}
}import?android.content.Context; import?android.support.v7.widget.RecyclerView; import?android.util.Log; import?android.view.LayoutInflater; import?android.view.View; import?android.view.ViewGroup; import?android.widget.TextView; import?java.util.List; /** ?*?Created?by?Administrator?on?2016/4/17. ?*/ public?class?SimpleAdapter?extends?RecyclerView.Adapter<MyViewHolder>?{ ????private?List<String>?mDatas; ????private?LayoutInflater?mInflater; ????private?Context?mContext; ????@Override ????public?int?getItemCount()?{ ????????return?mDatas.size(); ????} ????@Override ????public?void?onBindViewHolder(MyViewHolder?holder,?int?pos)?{ ????????holder.tv.setText(mDatas.get(pos)); ????} ????@Override ????public?MyViewHolder?onCreateViewHolder(ViewGroup?arg0,?int?viewType)?{ ????????View?view?=?mInflater.inflate(R.layout.item_single_textview,arg0,false); ????????MyViewHolder?hodler?=?new?MyViewHolder(arg0); ????????return?hodler; ????} ????@Override ????public?long?getItemId(int?position)?{ ????????return?super.getItemId(position); ????} ????public?SimpleAdapter(Context?context,List<String>?datas)?{ ????????this.mContext?=?context; ????????this.mDatas?=?datas; ????????mInflater?=?LayoutInflater.from(context); ????} } class?MyViewHolder?extends?RecyclerView.ViewHolder{ ????TextView?tv; ????public?MyViewHolder(View?itemView)?{ ????????super(itemView); ????????tv?=?(TextView)itemView.findViewById(R.id.tv); ????} }main.xml
<?xml?version="1.0"?encoding="utf-8"?> <RelativeLayout?xmlns:android="http://schemas.android.com/apk/res/android" ????xmlns:tools="http://schemas.android.com/tools" ????android:layout_width="match_parent" ????android:layout_height="match_parent" ????android:paddingBottom="@dimen/activity_vertical_margin" ????android:paddingLeft="@dimen/activity_horizontal_margin" ????android:paddingRight="@dimen/activity_horizontal_margin" ????android:paddingTop="@dimen/activity_vertical_margin" ????tools:context="com.qdbl.recyclerviewdemo2.MainActivity"> ????<android.support.v7.widget.RecyclerView ????????android:id="@+id/id_recyclerview" ????????android:layout_width="match_parent" ????????android:layout_height="wrap_content" ????????android:scrollbars="vertical"/> </RelativeLayout>
<?xml?version="1.0"?encoding="utf-8"?> <FrameLayout?xmlns:android="http://schemas.android.com/apk/res/android" ????android:layout_width="match_parent" ????android:layout_height="72dp" ????android:background="#44ff0000"> ????<TextView ????????android:id="@+id/tv" ????????android:layout_width="match_parent" ????????android:layout_height="match_parent" ????????android:gravity="center"?/> </FrameLayout>

2016-06-29
?SimpleAdapter 類第38行修改如下
2016-06-11
空指針一般是最容易解決的問題,首先可以提示到哪一行,然后針對那一行可以看看有幾個變量,空指針一定是那個變量的某個,更多的是粗心錯誤。利用debug可以更快速
2016-04-18
報空指針查看的方式,看報錯信息 第幾行,逆著推 看看