Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/188.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在很多帮助下,我将这个android类活动简化为一个错误。Eclipse要求我添加“)&引用";}&引用;,及&引用;为什么呢?_Android - Fatal编程技术网

在很多帮助下,我将这个android类活动简化为一个错误。Eclipse要求我添加“)&引用";}&引用;,及&引用;为什么呢?

在很多帮助下,我将这个android类活动简化为一个错误。Eclipse要求我添加“)&引用";}&引用;,及&引用;为什么呢?,android,Android,你有: package com.android.drinksonme; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.EditT

你有:

package com.android.drinksonme;

import android.app.Activity;

import android.content.Intent;

import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;

public class Screen2 extends Activity {

    // Declare our Views, so we can access them later
    private EditText etUsername;
    private EditText etPassword;
    private Button btnLogin;
    private Button btnSignUp;
    private TextView lblResult;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        // Get the EditText and Button References
                etUsername = (EditText)findViewById(R.id.username);
                etPassword = (EditText)findViewById(R.id.password);
                btnLogin = (Button)findViewById(R.id.login_button);
                btnSignUp = (Button)findViewById(R.id.signup_button);
                lblResult = (TextView)findViewById(R.id.result);

                       btnLogin.setOnClickListener(new OnClickListener () {  
                           public void onClick(View v){
                            final String username = etUsername.getText().toString();
                            final String password = etPassword.getText().toString();

                           if(username.equals("test") && password.equals("test")){
                               Intent i = new Intent(Screen2.this, DrinksTwitter.class);
                               startActivity(i);} 
                           else
                               lblResult.setText("Invalid username or password."); } 

                         /*  final Intent k = new Intent(Screen2.this, SignUp.class);
                           btnSignUp.setOnClickListener(new OnClickListener() {
                               public void onClick(View v) { 
                                   startActivity(k);
                               }*/ 
                           }
                       );
                    }                   
                   }
一定是这样的:

(new OnClickListener () {
    if( blah blah
关于你的新错误。。。那么这个呢:

(new OnClickListener () {
    public void onClick(View v){
        if( blah blah
    }
});

一个编译错误是没有意义的。如果你修复了这个错误,它可能会隐藏数百个

但是你缺少一个卷曲的大括号。检查并确保所有的花括号都正确匹配

编辑:

对于更新的代码,现在是

               btnLogin.setOnClickListener(new OnClickListener () { 
                   public void onClick(View v){
                       String username = etUsername.getText().toString();
                       String password = etPassword.getText().toString();
                       if(username.equals("test") && password.equals("test")){
                           Intent i = new Intent(Screen2.this, DrinksTwitter.class);
                           startActivity(i);
                       } 
                       else
                           lblResult.setText("Invalid username or password.");
                       } 
                   }
               );

正在创建单击侦听器时定义。ie在oncreate完成之前,在用户可能输入任何内容之前。

这似乎对我有用:

String username = etUsername.getText().toString();
String password = etPassword.getText().toString();

}

将大括号添加到末尾只会在倒数第二条大括号线上产生另一个错误。我从来没有说过要在末尾添加大括号。检查并确保它们匹配正确。大括号很重要,你不能随便扔到任何地方。更改代码(见上文),我没有收到任何错误,但现在每当在应用程序中单击“登录”时,它总是说用户名或密码无效。你需要自己尝试。什么时候出了问题你就来这里吗?从你的问题来看,这显然是你第一次编译这个东西。你花了不到7分钟的时间试图让它工作。我正在努力,这非常令人沮丧。当我刷新页面时,我正在将内容向上切换并添加一个减法代码。我知道它不会神奇地自行修复,我只是想了解为什么万一我再次遇到这种情况。网上有没有登录屏幕的例子!!!我只是不断制造更多的错误!!更改了代码(见上文),我没有收到任何错误,但现在每当在应用程序中单击“登录”时,它总是说用户名或密码无效。我还编辑了我的答案。您必须将
etUsername
etPassword
的声明更改为最终声明,否则将导致编译错误。问题是您在执行onClick方法之前设置了字符串的值。好的,我试过了,但是现在当我输入“test”和“test”作为登录凭据时,它就崩溃了。我有一本书,但没有任何例子可以帮助-(在它崩溃后粘贴logcat更改代码(见上文),我没有收到任何错误,但现在每当在应用程序中单击“登录”时,它总是说用户名或密码无效。
public class LoginActivity extends Activity {

private EditText UserName;
private EditText Password;
private Button login;


@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    login = (Button)findViewById(R.id.login);
    UserName = (EditText)findViewById(R.id.username);
    Password = (EditText)findViewById(R.id.password);
    login.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub
            String uName = UserName.getText().toString();
            String pWord = Password.getText().toString();
            if(uName.equals("test") && pWord.equals("test"))
            {
                Toast.makeText(getBaseContext(), "Yup", Toast.LENGTH_SHORT).show();
            }

        }
    }
    );


}