我使用了FrameLayout,其中我使用了两个LinearLayouts.第二个最初是不可见的,但是当我按下布局1上的按钮时,第二个布局变得可见并且与第一个布局重叠.我想要的是当我的第二个布局出现时,第一个布局的元素不应该是可点击的(或启用的).
为此我尝试了setEnabled(false)和setClickable(false),但这两个都不起作用我没有得到什么问题.
为此我尝试了setEnabled(false)和setClickable(false),但这两个都不起作用我没有得到什么问题.
代码如下
TableLayout table; EditText edit; ScrollView scroll; Button btn_save; Button btn_layer_save; Button btn_cross; AlertDialog alert_dialog; LinearLayout layout_above; int primary_selected; RadioButton radio_geo; RadioButton radio_alumni; String geo = "no" ; String alumni = "no" ; int color; /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); table = (TableLayout) findViewById(R.id.tableLayout1); edit = (EditText) findViewById(R.id.message_select_friends_edit_search); search_geo_name_list = new ArrayList<String>(); search_id_list = new ArrayList<String>(); scroll = (ScrollView) findViewById(R.id.register_scroll_view); btn_cross = (Button) findViewById(R.id.register_cross); btn_save = (Button) findViewById(R.id.register_save); btn_layer_save = (Button) findViewById(R.id.register_layer_save); btn_cross.setOnClickListener(this); btn_save.setOnClickListener(this); btn_layer_save.setOnClickListener(this); layout_above = (LinearLayout) findViewById(R.id.regsiter_layout_layer_above); createTableRows(name_list,id_list); } void createTableRows(ArrayList<String> list_name,ArrayList<String> list_id ) { /*-----R O W S O F T A B L E C R E A T E D D Y N A M I C A L L Y ------*/ } @Override public void onClick(View v) { // TODO Auto-generated method stub switch (v.getId()) { case R.id.register_save: layout_above.setVisibility(LinearLayout.VISIBLE); btn_save.setVisibility(LinearLayout.INVISIBLE); scroll.setEnabled(false); edit.setEnabled(false); edit.setClickable(false); scroll.setClickable(false); break; case R.id.register_cross: Toast.makeText(this,"Cross Cancel",1000).show(); Intent intent = new Intent(this,TestSave.class); startActivity(intent); finish(); break; case R.id.register_layer_save: selectedInfo(); break; } }`
解决方法
将正面布局的大小作为背景布局的大小并设置为正面
布局的背景颜色透明,所以背景布局是部分的
可见.
并将onClickListener设置为front layout,而onClick方法则不执行任何操作.
布局的背景颜色透明,所以背景布局是部分的
可见.
并将onClickListener设置为front layout,而onClick方法则不执行任何操作.
这个答案并不完全符合您的要求,但它是一个很好的选择.
希望能帮助到你