我对此很新,但我有几个看似愚蠢的问题,但我真的很感激答案。它们位于代码块的正下方。
package com.mycompany.myapp;
import android.app.*;
import android.os.*;
import android.view.*;
import android.widget.*;
import android.view.View.*;
public class MainActivity extends Activity
{
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button b = (Button) findViewById(R.id.button);
b.setOnClickListener(new OnClickListener() {
public void onClick(View p1) {
((TextView)findViewById(R.id.txtview)).setText(getDiag(40));
}
});
Button c = (Button) findViewById(R.id.button2);
b.setOnClickListener(new OnClickListener() {
public void onClick(View p1) {
((TextView)findViewById(R.id.txtview)).setText(getDiag(5));
}
});
}
public String getDiag(int n){
String spaces = "";
String finalstring = "";
for(int i = 0; (i <= n); i++){
spaces += " ";
finalstring += spaces + "*" + "\n";
}
return finalstring;
}}
所以,要清楚我的问题是什么: 1)AIDE创建的整个默认方法是什么?它总是需要还是我还可以编写我常用的java并在没有所有UI的情况下运行我的方法?
2)我有一个带括号的问题,一切正常,直到我添加了按钮c。我不知道究竟放在哪里,当前的代码AIDE告诉我它没有变量c。第25行的“)”来自何处?
答案 0 :(得分:1)
您可以根据自己的喜好进行编码
无法访问Button c单击,因为您犯了一个小错误:
在setOnClickListener上将b替换为c:
Button c = (Button) findViewById(R.id.button2);
b.setOnClickListener(new OnClickListener() {
public void onClick(View p1) {
((TextView)findViewById(R.id.txtview)).setText(getDiag(5));
}
});
应该像这样:
Button c = (Button) findViewById(R.id.button2);
c.setOnClickListener(new OnClickListener() {
public void onClick(View p1) {
((TextView)findViewById(R.id.txtview)).setText(getDiag(5));
}
});
答案 1 :(得分:0)
回答问题1: 提供的默认结构是赋予Android应用程序生命周期的方法。它们被定义为为您的应用程序提供流程。 您可以使用service来编写没有UI的Java代码。
您可以在AndroidManifest.xml中修改按钮位置,并确认您确实有一个按钮2。
您还可以提供更详细的错误。
我看不到你的第25行,但如果你在谈论onclickListener它是匿名类/接口实现的签名。