我想要一个非常简单的按钮,带有一些解释/ vizual-thing,也许是onCreate / onLauncher来做让你微笑的事情!我尝试了按钮here但是错误here,如果有人可以引导我找到关于Android按钮的现成示例,我可能会最简单。历史显示了R和XML文件的问题,如果有人可以清楚地说明如何做到这一点,这可能是最简单的:一个非常简单的按钮。它的目录树等?
请提供一个关于Android按钮的简单示例,其他内容。
答案 0 :(得分:4)
进入按钮的xml并设置“runClient”的onClick属性。
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true"
android:onClick="runClient"
android:text="=)" />
你应该在eclipse中看到类似的东西。
这是一个示例android项目文件树。突出显示的是layout.xml应该在的位置。
答案 1 :(得分:3)
首先,让我们看看你的test.java
,它不会按原样运作。我希望你理解面向对象编程的基本概念并摆脱静态方法。
在Android中,您需要扩展一个名为Activity
的类。如果您关注Lazy Ninja's answer,the Eclipse plugin可能已经为您创建了一个(可能称为MainActivity.java
)。简而言之,活动代表您的应用程序中的视图。在你琐碎的例子中,大多数(如果不是全部),你的代码都会进入那个类。
在Android中,您不使用public static void main(String[] args)
,而是覆盖活动的onCreate
方法。在AndroidManifest.xml
中,您定义了您的活动(此时您只需要一个)以及应用程序启动时启动的活动,其onCreate
是整个应用程序的起点(再次)看看Eclipse创建的结构。
在onCreate
中,您应该使用您希望在该活动中使用的布局调用setContentView
。布局作为生成的R类中的整数参数提供给setContentView
,例如R.layout.layout_file_name
映射到res/layout/layout_file_name.xml
处的XML文件。
布局文件是包含所需布局声明的文件。在您的情况下,它可能有LinearLayout
作为根元素和两个Button
。
答案 2 :(得分:2)
在您的主要活动中使用以下内容:
//Part of onCreate
Button b1;
setContentView(whatever.it.is);
b1 = (Button)findViewById(R.id.buttonID);
b1.setOnClickListener(buttonAddOnClickListener);
//Outside of onCreate, on its own
Button.OnClickListener buttonAddOnClickListener = new Button.OnClickListener(){
@Override
public void onClick(View arg0) {
//Switch statement so you don't have to use a lot of click listeners
switch (arg0.getId()) {
case R.id.b1:
doSomething();
case R.id.b2:
doSomethingElse();
}
}
};
在实现按钮的XML中,请确保添加:
android:id="@+id/anID"
将anID更改为您想要的ID。
此外,我更喜欢IntelliJ(http://www.jetbrains.com/idea/)用于Android编程。您的XML应位于标题为“res”的文件夹中,然后位于子目录“layout”中。如果您没有看到这些文件夹,则可能无法正确设置项目。
答案 3 :(得分:2)
日食
你将拥有你的android项目文件。而你布局xml文件将是res - &gt;布局文件夹。
我想你应该阅读Android Training来帮助你开始。
答案 4 :(得分:2)
逐步回答您的问题:
XML文件的每个视图都有一个id。当你第一次创建一个Android项目。主要活动已经使用Activity Class方法设置了第一个应用程序的内容视图。
<强>的setContentView(R.layout.main)强>
-layout - 表示/ res文件夹中的布局文件夹 -main - 表示/ res / layout文件夹中的XML文件。
您可以使用android doc
了解更多信息答案 5 :(得分:2)
制作按钮或任何其他Android GUI的最简单方法是使用REBOL 3:
REBOL []
load-gui
view [button "Click Me" on-action [request "" "Clicked!"]]
这是一个功能齐全的GUI程序,具有核心REBOL语言的所有功能,可用于进行网络,列表处理,文本解析,文件管理等。该程序以及R3的任何其他程序将在Android和桌面上运行操作系统,使用完全相同的代码。看看:
http://rebolforum.com/index.cgi?f=printtopic&permalink=Nick25-Aug-2013/10:08:38-7:00&archiveflag=new
答案 6 :(得分:0)
您的更新信息和代码似乎没有正确初始化按钮。
不需要这一行:
setContentView(myButton1);
什么是setContentView();它是否设置了xml视图。
Button myButton1 = (Button) findViewById(R.id.button1);
上述内容对您来说真的很有用。您现在可以使用:
myButton1.setOnClickListener(buttonListener);
Button.OnClickListener buttonListener = new Button.OnClickListener(){
@Override
public void onClick(View arg0) {
//Switch statement so you don't have to use a lot of click listeners
switch (arg0.getId()) {
case R.id.myButton1:
doSomething();
case R.id.b2:
doSomethingElse();
}
}
};
您设置的代码也不是Android设置。您正在使用
public static void main(String[] args)
您在Android项目中不想要的。请观看一些有关如何正确设置此视频的视频。这一行:
Button myButton1 = (Button) findViewById(R.id.button1);
有错误,因为'R'不是IDE现在知道的,因为项目设置不正确。一旦你这样做,你的很多问题都将得到解决。您将在onCreate()等上运行它而不是通过main(String [] args)...而且我再次强烈推荐IntelliJ,它使得设置Android项目变得非常容易,甚至比Eclipse更加容易。