2017-06-18 119 views
-4

点击按钮,但没有发生,为什么? 我遍历所有控件首先,如果它是Button控件,那么setsetOnClickListener点击Android按钮,但没有发生?

MainActivity类别:

public class MainActivity extends AppCompatActivity implements View.OnClickListener { 
@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
    LinearLayout MainLayout = (LinearLayout) getLayoutInflater().inflate(R.layout.activity_main, null); 
    for (int i = 0; i < MainLayout.getChildCount(); i++) { 
     View v = MainLayout.getChildAt(i); 
     if (v instanceof Button) 
     { 
      Button button = (Button) v; 
      button.setOnClickListener(this); 
     } 
    } 

@Override 
public void onClick(View v) { 
    switch (v.getId()) 
    { 
     case R.id.ButtonGetContent: 
      EditText txtContent = (EditText) findViewById(R.id.Edit_Name); 
      Toast.makeText(MainActivity.this,txtContent.getText().toString(),Toast.LENGTH_SHORT).show(); 
     default: 
      break; 
    } 
} 
} 
+2

为什么你想夸大这已经膨胀的布局中的按钮? –

+0

你说得对,它现在有效,谢谢 – Chen

+0

什么工作?我的答案? –

回答

0

使用

setContentView(MainLayout); 

如果你想发现其实这种观点

-1

您必须添加v.Button.setOnclickListner(本);

+0

你的编辑没有帮助。这正是代码所做的 –