http://forum.china.unity3d.com/thread-4099-1-1.html
WindowManager.LayoutParams lp = new WindowManager.LayoutParams();
UnityPlayer.currentActivity.runOnUiThread(new Runnable() {
@Override
public void run() {
lp.gravity = Gravity.TOP;
lp.flags = WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE;
lp.width = 200;
lp.height = 100;
Button btn = new Button(mContext);
btn.setText("test");
UnityPlayer.currentActivity.getWindowManager().addView(btn, lp);
btn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(mContext, "This is a test!!!",Toast.LENGTH_SHORT).}
});
}
});
}
http://blog.csdn.net/bfboys/article/details/52563089
UnityPlayer.currentActivity.runOnUiThread(new Runnable() {
@Override
public void run() {
FrameLayout.LayoutParams lp = new FrameLayout.LayoutParams (FrameLayout.LayoutParams.WRAP_CONTENT, FrameLayout.LayoutParams.WRAP_CONTENT);
lp.gravity = Gravity.LEFT|Gravity.TOP;//让x,y参数生效
lp.width = nWidth;
lp.height = nHeight;
lp.leftMargin = nX;
lp.topMargin = nY;
Button btn = new Button(mainActivity);
btn.setText(strBtnTxt);
fl.addView(btn,lp);
btn.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
UnityPlayer.UnitySendMessage( xxx );
}
});
}
});
protected void onCreate(Bundle savedInstanceState) {
mainActivity = this;
super.onCreate(savedInstanceState);
FrameLayout.LayoutParams params = new FrameLayout.LayoutParams(FrameLayout.LayoutParams.MATCH_PARENT,FrameLayout.LayoutParams.MATCH_PARENT);
fl = new FrameLayout(this);
addContentView(fl, params);
}