2

我有一个显示两个按钮的活动,单击呼叫按钮我想显示另一个活动,如图所示。

如何显示这种布局

请帮助。如何实现这一点

4

3 回答 3

0

一种方法是拥有一个自定义布局,您可以使用视图组将其添加到每个活动中:

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);

然后你只需要实现你的听众和其他的东西:)

于 2012-10-10T09:59:14.527 回答
0

您需要创建这两个按钮的 xml 文件,并使用 Layout Inflator 将新的 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);
于 2012-10-10T10:02:14.560 回答
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
            }
        }
    }
于 2012-10-10T10:21:34.197 回答