我是java或android的新手,只需创建一个演示。
我在google上找到了很好的例子:https://github.com/rciovati/Android-KeyboardView-Example
现在我想在Java中创建一个按钮和方法,然后单击该按钮,调用该方法并显示 hello world 消息。
我需要很好的帮助,因为我不知道我想要更改的位置以及将代码放在创建按钮的位置。
答案 0 :(得分:0)
您的代码,
Button btn=(Button)findViewById(R.id.button1);
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
Toast.makeText(getContext(), "Hello World", Toast.LENGTH_LONG).show();
}
});
和你的布局,
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity" >
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="232dp"
android:text="Button" />
</RelativeLayout>
答案 1 :(得分:0)
我不确定您的问题,但我假设您要使用打印Hello World消息的方法定义click侦听器。
在您的Button内部XML布局中包含android:onClick
属性。
例如:android:onClick="btnHelloWorldClick"
使用android:onClick属性中给出的相同名称定义Activity类中的方法。
例如:
public void btnHelloWorldClick(View v)
{
System.out.println("Hello world");
// or Toast.makeText(this, "Hello world", Toast.LENGTH_LONG).show();
}
答案 2 :(得分:0)
这个问题最有可能被关闭,但这是你需要知道的 要处理任何视图的点击,让它成为相对布局,按钮,textview等,你需要实现onClickListener并在界面的onclick函数内执行函数
您可以通过多种方式设置onclick侦听器:
1让你的活动实现onclickListener它会要求你实现onClick函数,你可以在那里运行你的函数
public class HomeScreenActivity extends Activity implements OnClickListener {
public void onClick(View v) {
int clickedId = v.getId();
switch (clickedId) {
case R.id.nearbyButtonHome:
nearbyButtonAction();
break;
case R.id.cgExButtonHome:
cgExButtonAction();
break;
case R.id.styleButtonHome:
styleButtonAction();
break;
}
}
}
2你可以直接在按钮对象上设置onclick监听器
close.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
dismiss();
}
});
3您可以在布局文件
中为按钮标记添加属性android:onClick="func1"
并在您的活动中创建此功能。
这就是按钮点击次数
答案 3 :(得分:0)
你可以这样做:
首先在xml布局的Button控制器中添加属性“android:onClick =”btnHelloWorldClick“”。
例如:
答案 4 :(得分:0)
在xml中定义按钮
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity" >
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button" />
</RelativeLayout>
MainActivity.java
setContentView(R.id.activity_main);
Button b=(Button)findViewById(R.id.button1);
b.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
// do something or call a function defined.
Toast.makeText(MainActivity.this, "Hello World", Toast.LENGTH_LONG).show();
}
});
为xml中的按钮定义onclick属性
activtiy_main
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity" >
<Button
android:id="@+id/button1"
android:onClick="btnClick" // method
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button" />
</RelativeLayout>
MainActivity.java
public void btnClick(View v)
{
// do something
Toast.makeText(MainActivity.this, "Hello world", Toast.LENGTH_LONG).show();
}
以编程方式创建按钮
MainActivity
setContentView(R.layout.activity_main);
RelativeLayout rl = (RelativeLayout)findViewById(R.id.relativelayout);
// Define relative layout in xml layout file.
Button b = new Button(MainActivity.this);
rl.addView(b);
// button click using annonymous inner class
b.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
// do something or call a function defined.
Toast.makeText(MainActivity.this, "Hello World", Toast.LENGTH_LONG);
}
});
activity_main.xml中
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:id="@+id/relativelayout"
android:layout_height="match_parent"
tools:context=".MainActivity" >
您的类也可以实现OnClickListener。在那种情况下
public class MainActivity extends Activity implements OnClickListener
{
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button button = (Button) findViewById(R.id.button1)
button.setOnClickListener(this);
}
@Override
public void onClick(View v) {
switch(v.getId()) //returns int
{
case R.id.button1 :
// do something or call a function defined.
Toast.makeText(MainActivity.this, "Hello World", Toast.LENGTH_LONG);
break;
}
}
}