1

나는 사용자 정의 편집 텍스트를 만들려고하고 있고 여기에 붙어있어 ... 오류 인플레이션 클래스 (사용자 정의보기)

public class MainActivity extends Activity { 

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
} 

@Override 
public boolean onCreateOptionsMenu(Menu menu) { 
    getMenuInflater().inflate(R.menu.activity_main, menu); 
    return true; 
} 


public static class MyEditText1 extends EditText{ 

    Paint mPaint; 




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

    } 

    public MyEditText1(Context context, AttributeSet attrs) { 
     super(context, attrs); 
     mPaint=new Paint(); 
     mPaint.setColor(Color.BLACK); 


    } 

    @Override 
    protected void onDraw(Canvas c){ 
     super.onDraw(c); 
     int height=getHeight(); 
     int width=getWidth(); 
     int linespace=10; 
    int count=height/linespace; 

     for(int i=0;i<count;i++){ 
      c.drawLine(0, i*linespace, width, i*linespace, mPaint); 
     } 


    } 



    } 


} 

MyEditText 클래스 아래에있는 내 코드를 참조하십시오하면 내부 클래스

입니다

와 나는

<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" > 



<com.example.customedittext.MainActivity.MyEditText1 

    android:id="@+id/editText1" 
    android:layout_width="wrap_content" 
    android:layout_height="fill_parent" 
    android:ems="10" 
    android:inputType="textNoSuggestions"/> 


</RelativeLayout> 

으로 내 XML이보기로 다스 려하고 그러나 응용 프로그램은 힘 클을 받고있다 내 바로 뒤에 ed.하지만 내부 클래스를 MyEditText.java (및 XML에서 그것을 참조하는) 별도의 파일을 유지합니다. 그것은 잘 작동합니다. 내가 만든 비록 내부 클래스로 유지하는 문제가 무엇입니까. 내 내부 클래스 정적? 보기는 내부 클래스이기 때문에

+0

스택 트레이스는 만들기 – WarrenFaith

답변

6

, 당신은 당신의 XML에서 그것은 약간 다른 참조해야합니다 ($ 기호에주의) : 당신이 말한대로

com.example.customedittext.MainActivity$MyEditText1 
+0

...없는 나를 준다 XML 파일에 다음과 같은 오류가 --- "이 라인에서 찾을 여러 주석 : \t - 요소 유형" com.example.customedittext.MainActivity> "중 하나가 사양, 특성 와야합니다" " \t 또는"/> "." – amj

+1

힌트를 남겨주는 @wsanville ... i figure d out out. 실제로 뷰 클래스가 중첩 된 경우 xml에 class 속성을 사용해야합니다. [Custom custom use] (http://developer.android.com/guide/) 링크가 있습니다. topics/ui/custom-components.html # modifications) – amj

+0

@ amj 올바른 답변을 선택해야합니다. 그의 답변을 통해 내가 갖고있는 문제를 해결할 수있었습니다. – Kirk

관련 문제