안녕하세요.
가입해놓고 좋은정보를 많이 얻어가다가,
처음으로 글남기네여^^

다름이 아니라 지금 제가 모듈을 구성중인데...
그 구조가 EditText를 추가하기가 너무 난해? 무지하여 질문드립니다.
우선 구조는 아래에 적어놨습니다.

궁금한점이..
XML의 기본세팅을 유지한채 실제 코드로 모든걸 처리하고있습니다.
헌데 위젯의 다른기능은 상관이없지만,
EditText로 입력을 받아야 하는 경우가 있어서요..
View를 상속받은 클래스내에서 처리를 하고싶은데...
어떻게해야할지 자료 리서칭을 해봐도 답이 나오질 않네요...
즉, 어떤화면이 뷰에서 그려지고 있을때 EditText를 사용자가 원하는 위치에 위치시키고 사용자 입력을 받고싶습니다.
(EditText를 보였다 입력이 완료되면 사라지게 해야하는데, 뷰클래스 하나로 이게 가능할지도 의문이네여...)
어떻게해야 될지 답변좀 부탁드립니다.
(EditText가 아니더라도 사용자 입력을 받아들일 수 있는 다른 방법이 있다면 그 방법도 답변좀 부탁드립니다^^)




AndroidManifest.xml의 구조는 아래와 같습니다.

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
      package="Lib.Android.Base"
      android:versionCode="1"
      android:versionName="1.0">
    <application android:icon="@drawable/icon" android:label="@string/app_name">
        <activity android:name=".StartAndroid"
                  android:label="@string/app_name">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

    </application>
    <uses-sdk android:minSdkVersion="7" />
 <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"> </uses-permission>
 <uses-permission android:name="android.permission.INTERNET"></uses-permission>
 <supports-screens
  android:largeScreens="true"
  android:normalScreens="true"
  android:smallScreens="true"
  android:anyDensity="true" />
</manifest>


그리고 메인 ACTIVITY의 내용은 아래와 같습니다.

package Lib.Android.Base;

import android.app.Activity;
import android.os.Bundle;
import android.util.*;
import android.view.*;

public class StartAndroid extends Activity {
    /** Called when the activity is first created. */
 public View     AndroidView;
 
    @Override
    public void onCreate(Bundle savedInstanceState) 
    {
        super.onCreate(savedInstanceState);
        Log.i("MODULE_LOG", "public void onCreate(Bundle savedInstanceState)");
       
        //setContentView(R.layout.main);
       
        //---------------------------------------------------------------------------------
        // Is Android TitleWindow Support?
        requestWindowFeature(Window.FEATURE_NO_TITLE);
        
       
        AndroidView = new AndroidView(this);
        setContentView(AndroidView);        
    }    
}


마지막으로 VIEW를 상속받은 클래스는 아래와 같습니다.
package Lib.Android.Base;


/*********************************************************************
 Import Android SDK Class.
*********************************************************************/
import android.content.*;
import android.graphics.*;
import android.os.*;
import android.util.*;
import android.view.*;
import android.media.*;
import android.widget.*;

import java.io.*;
import java.lang.*;
import java.util.*;
import java.net.*;


/*********************************************************************
 Import Android Library.
*********************************************************************/
import Lib.Android.Base.UserDefine;
import Lib.Android.Base.Util.*;
import Lib.Android.Base.Net.*;


public class AndroidView extends View implements Runnable, ProNetWorkEventListener, View.OnTouchListener
{
 /*********************************************************************
  Varications...
  *********************************************************************/
 
 public UserDefine    DEF = new UserDefine();
 public ProLib     Lib = new ProLib();
 public ProNetWorkMgr   Net = new ProNetWorkMgr(this);
 
 public PacketHeader    SHeader = new PacketHeader();
 public PacketHeader    RHeader = new PacketHeader(); 
 
 public Thread      MainThread = null;
  
 public Paint     paint;
 public Context      context;
 
 public int      ScreenWidth;
 public int      ScreenHeight;
 
 public int      TouchX;
 public int      TouchY;
 
 public int       mx[] = new int[5];
 public int       mr[] = new int[5];
 
 public int      Rotate = 0;
 
 public EditText     Input;
 
 
 
 /*********************************************************************
  Android View Class Constructor.
* ********************************************************************/
 
 public AndroidView(Context cxt) 
 {
  super(cxt);
  Log.i("MODULE_LOG", "public AndroidView(Context cxt)");
  
  //---------------------------------------------------------------------------------
  // Context Remember.
  context = cxt.getApplicationContext();
  
  //---------------------------------------------------------------------------------
  // This screen is get the focusing.
  setFocusable(true);

  //---------------------------------------------------------------------------------
  // Make the paint.
  paint = new Paint(Paint.ANTI_ALIAS_FLAG);
  paint.setColor(Color.BLUE);
  
  //---------------------------------------------------------------------------------
  // Init Android Library.
  Lib.Init_ProLib(context, paint);

  Lib.LoadImage(0, R.drawable.logo, 45, 30, 30);
  Lib.LoadImage(1, R.drawable.number);
  
  //MainThread = new Thread(this);
  //MainThread.start();
  
  //Input = new EditText(cxt);
  //Input.setMovementMethod(null);
  //Input.setOnTouchListener(this);
 }
 
 public void run()
 {
  try
  {
   // Process User Code.    

    postInvalidate();
    Thread.sleep(10);
  } 
  catch(Exception e) { e.printStackTrace(); }
 }
 
  /*********************************************************************
  User Input Interface.
  *********************************************************************/
 
 public boolean onTouch(View v, MotionEvent event)
 {
 
  return true;
 }

  /*********************************************************************
  Screen Draw Override Function.
  *********************************************************************/
 
 protected void onDraw(Canvas canvas) 
 {
  super.onDraw(canvas);
  //Log.i("MODULE_LOG", "protected void onDraw(Canvas canvas)");
  
  DrawScreen(canvas);
 }
 
 public void DrawScreen(Canvas canvas)
 {
      // User Draw Code.
}