Java 助手:无法访问变量C和理解默认代码?

Java 助手:无法访问变量C和理解默认代码?,java,android,aide-ide,Java,Android,Aide Ide,我对这一点很陌生,但我有几个问题可能看起来很傻,但我真的很想得到答案。它们位于代码块的正下方 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 { /**

我对这一点很陌生,但我有几个问题可能看起来很傻,但我真的很想得到答案。它们位于代码块的正下方

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;
        }}
package com.mycompany.myapp;
导入android.app.*;
导入android.os.*;
导入android.view.*;
导入android.widget.*;
导入android.view.view.*;
公共类MainActivity扩展了活动
{
/**在首次创建活动时调用*/
@凌驾
创建时的公共void(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
按钮b=(按钮)findViewById(R.id.Button);
b、 setOnClickListener(新的OnClickListener(){
公共void onClick(视图p1){
((TextView)findViewById(R.id.txtview)).setText(getDiag(40));
}
});
按钮c=(按钮)findViewById(R.id.button2);
b、 setOnClickListener(新的OnClickListener(){
公共void onClick(视图p1){
((TextView)findViewById(R.id.txtview)).setText(getDiag(5));
}
});
}
公共字符串getDiag(int n){
字符串空格=”;
字符串finalstring=“”;
对于(int i=0)(i回答问题1:
提供的默认结构是提供Android应用程序生命周期的方法。它们的定义是为应用程序提供流程。
您可以使用服务编写java代码,而无需UI

您可以修改AndroidManifest.xml中的按钮位置,并检查是否确实有按钮2

您还可以提供更详细的错误信息

我看不到你的第25行,但是如果你说的是onclickListener,它是匿名类/接口实现的签名

  • 你可以自己编写代码,不管你想要什么

  • 无法访问按钮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));
                }
        });
    
    public void onClick(View p1){((TextView)findViewById(R.id.txtview)).setText(getDiag(5));}}};,这段代码末尾的括号。我不确定它的结尾是什么。我想它可能解决了变量c的问题。