1

私のアプリケーションには、アクティビティ クラスが 1 つあります。そのアクティビティ クラスには、「Xml ファイル」ではない別のクラス ファイルであるレイアウトを設定しました。そのクラスファイルに「編集テキスト」を配置しようとしましたが、来ていますが機能していません(クリック可能でも入力を入力できません)。「SO」で多くの投稿を試みましたが、まだ取得できませんそれ。

私のコード:

アクティビティ:

public class MainActivity extends Activity 
{
    HomeDesign hm;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        hm = new HomeDesign(this);
        setContentView(hm);


//      Canvas canvas = new Canvas();
//      Bitmap image = BitmapFactory.decodeResource(getResources(), R.drawable.sabrerez);
//      canvas.drawBitmap(image, 10, 10, null);
//      ImageView img = (ImageView) findViewById(R.id.logo);
//      
//      img.setBackgroundResource(R.drawable.sabrerez);

    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.activity_main, menu);
        return true;
    }

}

クラスを表示:

       public void draw(Canvas c)
            {
               brush.setColor(Color.parseColor("#617981"));
               c.drawRect(0, 0, c.getWidth(), 70, brush);
               c.drawBitmap(bm, 10, 10, brush);
               brush.setColor(Color.parseColor("#ebecec"));
               c.drawRect(0, 70, c.getWidth(),c.getHeight(), brush);
               brush.setStrokeWidth(3);
               brush.setColor(Color.parseColor("#617981"));
               brush.setTextSize(15);
               c.drawText("Username", c.getWidth()/8,c.getHeight()/2 - 100, brush);
               c.drawText("Password", c.getWidth()/8,c.getHeight()/2 - 50, brush);
               brush.setColor(Color.parseColor("#000000"));

               FrameLayout layout = new FrameLayout(context);


             username= new EditText(context);
//       LinearLayout.LayoutParams params2 = (LinearLayout.LayoutParams) username.getLayoutParams();
//       LinearLayout.LayoutParams params2 = new LinearLayout.LayoutParams(40,40);
//       username.setText("" + i);
       username.setFocusableInTouchMode(true);
       username.setFocusable(true);
       username.requestFocus();
       username.setEnabled(true);

       username.setRawInputType(InputType.TYPE_TEXT_FLAG_MULTI_LINE);
       username.setInputType(InputType.TYPE_CLASS_TEXT);


               layout.measure(c.getWidth(),c.getHeight());
        //       layout.
               layout.layout(10, 200, 100, 220);

        //       layout.layout(c.getWidth()/8+100,c.getHeight()/2 - 110 - 10,c.getWidth()/8+250,c.getHeight()/2 - 100 + 10);
        //       layout.layout(100,100,100,80);

               layout.draw(c);
    }

これを解決するには?

4

0 に答える 0