게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
리스트뷰를 뿌려주는 부분에서 나는 에러.
게시물ID : programmer_17781짧은주소 복사하기
작성자 : kotran
추천 : 0
조회수 : 1233회
댓글수 : 1개
등록시간 : 2016/06/29 20:10:57
Oncreate()안에서
리스트에 setAdapter 하는부분에서 에러가 발생합니다.
알림장1이 쭉 떠야하는데...아예 안되고 아래와같은에러가나네요. 
Java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.ListView.setAdapter(android.widget.ListAdapter)' on a null object reference

다른 리스트뷰에다가 이 어댑터 그대로 쓰면 잘 되는거보니
Adapter에는 문제가 없고...
리스트뷰에 문제가 있는건데 뭔지모르겠습니다.

public class MainActivity extends AppCompatActivity {
public static ListView listview;
public Activity activity;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
activity=this;
CustomList_Alrim customList_alrim=new CustomList_Alrim(activity);
listview = (ListView)findViewById(R.id.listview);
// 리스트뷰에 어뎁터 설정
listview.setAdapter(customList_alrim);

// 다이얼로그 생성

}

public class CustomList_Alrim extends BaseAdapter {
private ArrayList<String> list;
private Activity activity;

CustomList_Alrim(Activity activity) {
Log.e("main", "CustomList_Alrim리스트뷰 생성자");
this.activity = activity;
list = new ArrayList<String>();
list.add("알림장1");
}

public void setName(String name) {
list.add(name);

}

@Override
public int getCount() {
return list.size();
}

@Override
public Object getItem(int position) {
return list.get(position);
}

@Override
public long getItemId(int position) {
return position;
}

@Override
public View getView(int position, View convertView, ViewGroup parent) {
Log.e("main", "write getview");
ListViewHolder holder = null;
final int pos = position;
TextView less;

// 최초 뷰 생성
if (convertView == null) {

Log.e("main", "null");
LayoutInflater inflater = (LayoutInflater) activity.getApplicationContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE);

convertView = inflater.inflate(R.layout.list_row, parent, false);
less = (TextView) convertView.findViewById(R.id.name_text);

holder = new ListViewHolder();
holder.less = less;

// list values save
convertView.setTag(holder);
// 텍스트 보이기
less.setVisibility(View.VISIBLE);
} else {
Log.e("main", "null아님!");
// list values get
holder = (ListViewHolder) convertView.getTag();
less = holder.less;
}

// 리스트 이름 보이기
less.setText(list.get(pos));

return convertView;
}

private class ListViewHolder {
TextView less;

}
}
}
전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호