마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

ListView에 제가 만든 클래스(View에서 상속 받음)를 올리고 싶습니다.

0 추천

module_adapter.xml에 제가 만든 클레스를 넣으면 프로그램이 죽어요

상속만 하고 아무것도 안한 클래스인데도요..
 
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/layoutMDAD"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:weightSum="100"
    android:orientation="horizontal" >
 
    <TextView
        android:id="@+id/textName"
        android:layout_width="0dp"
        android:layout_height="match_parent"
        android:layout_weight="25"
        android:background="#ff808080"/>
 
    <EditText
        android:id="@+id/editData"
        android:layout_width="0dp"
        android:layout_height="match_parent"
        android:layout_weight="25"
        android:background="#ffffffff" />
    
    <View   <---------- 여기에 com.example.test.Testview를 넣으면..
        android:id="@+id/viewPattern"
        android:layout_width="0dp"
        android:layout_height="match_parent"
        android:layout_weight="50"
        android:background="#ff000000" />
 
</LinearLayout>
 
이유 아시는 분 한수 지도 부탁드립니다.
첨부 파일은 전체 소스입니다.
즐프하세요.
//TestView  class

package com.example.test;

import android.content.Context;
import android.view.View;

public class TestView extends View {

	public TestView(Context context) {
		super(context);
		// TODO Auto-generated constructor stub
	}

}



//ModuleAdapterView  Class
package com.example.test;

import android.app.Activity;
import android.content.Context;
import android.util.AttributeSet;
import android.view.LayoutInflater;
import android.widget.EditText;
import android.widget.LinearLayout;
import android.widget.TextView;

public class ModuleAdapterView extends LinearLayout {

	TextView textName;
	EditText editData;
	public ModuleAdapterView(Context context) {
		super(context);
		// TODO Auto-generated constructor stub
		Init(context);
	}
	
	public ModuleAdapterView(Context context, AttributeSet attrs) {
		super(context, attrs);
		// TODO Auto-generated constructor stub
		Init(context);
	}
	
	private void Init(Context context)
	{
		LayoutInflater inflater = (LayoutInflater)context.getSystemService(Activity.LAYOUT_INFLATER_SERVICE);
		inflater.inflate(R.layout.moudle_adapter, this, true);  // 요기서 죽음
		
		textName = (TextView)findViewById(R.id.textName);
		editData = (EditText)findViewById(R.id.editData);
	}
	
	public void setName(String strName)
	{
		textName.setText(strName);
	}
	
	public void setData(String strData)
	{
		editData.setText(strData);
	}

}

 

익명사용자 님이 2013년 4월 10일 질문
나머지 생성자 2개를 더 구현하세요.

1개의 답변

0 추천

 

private void Init(Context context)
{
    LayoutInflater inflater = (LayoutInflater)context.getSystemService(Activity.LAYOUT_INFLATER_SERVICE);
    View view = inflater.inflate(R.layout.moudle_adapter, null);  // 요기서 죽음
    
    textName = (TextView) view.findViewById(R.id.textName);
    editData = (EditText) view.findViewById(R.id.editData);
}
aucd29 (218,390 포인트) 님이 2013년 4월 10일 답변
aucd29님이 2013년 4월 10일 reshown
...