【问题标题】:some mistakes on creating application创建应用程序的一些错误
【发布时间】:2017-02-22 12:20:25
【问题描述】:

我正在学习如何使用 android studio 创建应用程序, 这是我的代码源:

 package com.example.droide;
    import android.app.Activity;
    import android.bluetooth.BluetoothAdapter;
    import android.content.Intent;
    import android.os.Bundle;
    import android.os.Handler;
    import android.os.Message;
    import android.util.Log;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.widget.Button;
    import android.widget.ImageView;
    import android.widget.TextView;
    import android.app.Activity;
    import android.bluetooth.BluetoothAdapter;
    import android.content.Intent;
    import android.os.Bundle;
    import android.os.Handler;
    import android.os.Message;
    import android.util.Log;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.widget.Button;
    import android.widget.ImageView;
    import android.widget.TextView;

    public class DroideSphereRuhlmannActivity extends Activity implements      OnClickListener {
    private TextView logview;
    private Button connect, deconnect;
    private ImageView forwardArrow, backArrow, rightArrow, leftArrow, stop, topleftArrow, toprightArrow, backleftArrow, backrightArrow;
    private BluetoothAdapter mBluetoothAdapter = null;
    private String[] logArray = null;
    private BtInterface bt = null;

    static final String TAG = "Droid";
    static final int REQUEST_ENABLE_BT = 3;

    final Handler handler = new Handler() {
        public void handleMessage(Message msg) {
            String data = msg.getData().getString("receivedData");
            addToLog(data);
        }
    };

    final Handler handlerStatus = new Handler() {
        public void handleMessage(Message msg) {
            int status = msg.arg1;
            if(status == BtInterface.CONNECTED) {
                addToLog("Connected");
            } else if(status == BtInterface.DISCONNECTED) {
                addToLog("Disconnected");
            }
        }
    };

    private void addToLog(String message){
        for (int i = 1; i < logArray.length; i++){
            logArray[i-1] = logArray[i];
        }
        logArray[logArray.length - 1] = message;

        logview.setText("");
        for (int i = 0; i < logArray.length; i++){
            if (logArray[i] != null){
                logview.append(logArray[i] + "\n");
            }
        }
    }
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_android_remote);
        logview = (TextView)findViewById(R.id.logview);
        logArray = new String[3];
        connect = (Button)findViewById(R.id.connect);
        connect.setOnClickListener(this);
        deconnect = (Button)findViewById(R.id.deconnect);
        deconnect.setOnClickListener(this);
        forwardArrow = (ImageView)findViewById(R.id.forward_arrow);
        forwardArrow.setOnClickListener(this);
        backArrow = (ImageView)findViewById(R.id.back_arrow);
        backArrow.setOnClickListener(this);
        rightArrow = (ImageView)findViewById(R.id.right_arrow);
        rightArrow.setOnClickListener(this);
        leftArrow = (ImageView)findViewById(R.id.left_arrow);
        leftArrow.setOnClickListener(this);
        stop = (ImageView)findViewById(R.id.stop);
        stop.setOnClickListener(this);
        topleftArrow = (ImageView)findViewById(R.id.topleft_arrow);
        topleftArrow.setOnClickListener(this);
        toprightArrow = (ImageView)findViewById(R.id.topright_arrow);
        toprightArrow.setOnClickListener(this);
        backrightArrow = (ImageView)findViewById(R.id.backright_arrow);
        backrightArrow.setOnClickListener(this);
        backleftArrow = (ImageView)findViewById(R.id.backleft_arrow);
        backrightArrow.setOnClickListener(this);
    }
    @Override

    public void onResume() {
        super.onResume();
        mBluetoothAdapter = BluetoothAdapter.getDefaultAdapter();
        if (mBluetoothAdapter == null) {
            Log.v(TAG, "Device does not support Bluetooth");
        }
        else{
            if (!mBluetoothAdapter.isEnabled()){

                Intent enableBtIntent = new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE);
                startActivityForResult(enableBtIntent, REQUEST_ENABLE_BT);
            }
            else{
                bt = new BtInterface(handlerStatus, handler);
            }
        }
    }
    protected void onActivityResult(int requestCode, int resultCode, Intent moreData){
        if (requestCode == REQUEST_ENABLE_BT){
            if (resultCode == Activity.RESULT_OK){
                bt = new BtInterface(handlerStatus, handler);
            }
            else if (resultCode == Activity.RESULT_CANCELED)
                Log.v(TAG, "BT pas active");
            else
                Log.v(TAG, "code n'est pas valide");
        }
        else{
            Log.v(TAG, "code n'est pas reconnu");
        }
    }
    @Override
    public void onClick(View v) {
        if(v == connect) {
            addToLog("Appareillage en cours");
            bt.connect();
        }
        else if(v == deconnect) {
            addToLog("connexion en cours");
            bt.close();
        }
        else if(v == forwardArrow) {
            bt.sendData("F");
        }
        else if(v == backArrow) {
            bt.sendData("B");
        }
        else if(v == rightArrow) {
            bt.sendData("R");
        }
        else if(v == leftArrow) {
            bt.sendData("L");
        }
        else if( v == topleftArrow){
            bt.sendData("I");
        }
        else if(v == toprightArrow){``
            bt.sendData("J");
        }
        else if(v == backleftArrow){
            bt.sendData("G");
        }
        else if(v ==backrightArrow){
            bt.sendData("H");
        }
        else if(v == stop) {
            bt.sendData("S");
        }

错误日志:

之后,我收到了一些错误,例如:

“错误:(156, 10) 错误:解析时到达文件末尾”

“错误:任务':app:compileDebugJavaWithJavac'执行失败。”

所以我现在不知道如何解决这个问题。

【问题讨论】:

  • 请告诉我们确切的错误信息以及是哪一行chuffed导致它。
  • 您的代码末尾缺少一些花括号。我建议你学习一些 Java 基础知识,然后从一个更简单的应用程序开始。
  • 我也有同样的想法,但我不知道我可以添加这些花括号
  • 每个左大括号后的行应该缩进。每个右大括号都应该与匹配的左大括号对齐。根据这些规则格式化您的代码,缺少的大括号会很明显。
  • edit 将您的代码简化为minimal reproducible example 的问题。您当前的代码包含许多与您的问题无关的内容 - 一个最小样本通常看起来类似于一个好的单元测试:只执行一项任务,并为可重复性指定输入值。

标签: android


【解决方案1】:

如果这是您的完整代码,那么您的 onClick 方法没有以大括号结尾,而且您的主类也没有以大括号结尾。

所以在你的代码末尾添加两个大括号

【讨论】:

    猜你喜欢
    • 2022-01-21
    • 1970-01-01
    • 2016-09-16
    • 1970-01-01
    • 1970-01-01
    • 2012-11-13
    • 2021-12-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多