Sorry if it is sort of duplicate question with this one, I have tried the solutions provided and on some other posts too but none of them are working for me.
I have drawn the EditText but it is not clickable (no keyboard appeared after touch)
public class GamePanel extends SurfaceView implements SurfaceHolder.Callback{
private LinearLayout lL;
private EditText editText;
@Override
public void surfaceCreated(SurfaceHolder holder){
    lL = new LinearLayout(getContext());
    editText = new EditText(getContext());
    editText.setFocusableInTouchMode(true);
    editText.setClickable(true);
    editText.requestFocus();
    editText.setText("Hello World");
    editText.setVisibility(View.VISIBLE);
    lL.addView(editText);
    lL.setDrawingCacheEnabled(true);
    lL.measure(canvas.getWidth(), canvas.getHeight());
    lL.layout(0, 0, canvas.getWidth(), canvas.getHeight());
    lL.bringChildToFront(editTextView);
}
@Override
public void draw(Canvas canvas){
    canvas.drawBitmap(lL.getDrawingCache(),50,50,null);
}
}
I have also tried this from the solution I saw: (using xml to create the EditText)
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<EditText
    android:id="@+id/editText1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"/>
</RelativeLayout>
Change EditText to this and remove canvas.drawBitmap():
EditText editText = (EditText)findViewById(R.id.editText1);
but the app always force closed when I did this.
Main problem is how to make EditText clickable and show the soft keyboard like when you just put it from xml without drawing it on canvas at all
 
     
     
     
     
    