我有一个显示两个按钮的活动,点击通话按钮我想显示另一个活动,如图所示。
请帮助。如何实现这一目标
答案 0 :(得分:0)
实现此目的的一种方法是使用自定义布局添加到具有viewgroup的每个活动中:
private View view;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
ViewGroup parent = (ViewGroup) findViewById(R.id.linearLayout1);
view = LayoutInflater.from(getBaseContext()).inflate(R.layout.custom_layout,
null);
parent.addView(view);
然后你只需要实现你的听众以及更进一步的内容:)
答案 1 :(得分:0)
您需要创建这两个按钮的xml文件,并使用Layout Inflator将新的xml添加到旧的xml中。例如 1)你的新xml
LayoutInflator buttons = LayoutInflater.from(getBaseContext()).inflate(R.layout.buttons,
currentxml, false);
2)通过id引用的旧xml父级 - >
RelativeLayout relativeLayout = (RelatveLayout) findViewById(R.id.oldxml);
3)现在添加..
relativeLayout.addView(buttons);
答案 2 :(得分:0)
您可以使用弹出功能在功能中添加此功能。 Popuser是您要扩充的xml
文件。
public void popupshow(){
try{
LayoutInflater inflater=(LayoutInflater)SRSDMain.this.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
Display display=getWindowManager().getDefaultDisplay();
int width=display.getWidth()/2;
int height=display.getHeight()/2;
View pop=inflater.inflate(R.layout.popupuser,null,false);
pop.measure(View.MeasureSpec.UNSPECIFIED,View.MeasureSpec.UNSPECIFIED);
height=pop.getMeasuredHeight();
width=pop.getMeasuredWidth()+50;
pu=new PopupWindow(pop,width,height,true);
pu.showAtLocation(findViewById(R.id.ll3),Gravity.CENTER,1,1);
Button btn=(Button)pu.getContentView().findViewById(R.id.button);
btn.getBackground().setColorFilter(new LightingColorFilter(0xFF505450,0xFF101010));
btn.setTextColor(Color.WHITE);
btn.setTypeface(null,Typeface.BOLD);
btn.setOnClickListener(new View.OnClickListener(){
public void onClick(View v){
//anything you want to do
pu.dismiss();
}
});
}
catch(Exception ex){
//Catch The Exception
}
}
}