我正在制作我的第一个Android应用程序,但是我无法继续。
我想制作2个用于播放和停止的按钮,但是在测试时,出现错误“无法解析符号”。
import android.Manifest;
import android.content.pm.PackageManager;
import android.location.Location;
import android.os.Build;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v4.app.ActivityCompat;
import android.support.v4.app.FragmentActivity;
import android.support.v4.content.ContextCompat;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;
。
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_maps_create_new_path);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M)
{
checkUserLocationPermission();
}
// Obtain the SupportMapFragment and get notified when the map is ready to be used.
SupportMapFragment mapFragment = (SupportMapFragment) getSupportFragmentManager()
.findFragmentById(R.id.map);
mapFragment.getMapAsync(this);
Button ButtonStart = (Button) findViewById(R.id.ButtonStart);
Button ButtonEnd = (Button) findViewById(R.id.ButtonEnd);
int count = 0;
if (count == 0)
{
ButtonEnd.setEnabled(false);
ButtonStart.setEnabled(true);
}
ButtonStart.setOnClickListener(new View.OnClickListener(){public void onClick (View v) {next_page(v);}});
ButtonEnd.setOnClickListener(new View.OnClickListener() {public void onClick (View v) {next_page(v);}});
}
public void next_page(View v){
switch(v.getId())
{
case R.id.ButtonStart:
count++;
ButtonStart.setEnabled(false);
ButtonStart.setVisibility(View.GONE);
ButtonEnd.setEnabled(true);
ButtonEnd.setVisibility(View.VISIBLE);
break;
case R.id.ButtonEnd:
count--;
ButtonStart.setEnabled(true);
ButtonEnd.setEnabled(false);
ButtonEnd.setVisibility(View.GONE);
ButtonStart.setVisibility(View.VISIBLE);
break;
}
}
错误是关于内部开关的计数,ButtonStart和ButtonEnd。
如果我把线放在上面
Button ButtonStart = (Button) findViewById(R.id.ButtonStart);
Button ButtonEnd = (Button) findViewById(R.id.ButtonEnd);
int count = 0;
在onCreate()之外,错误消失了,但应用程序无法打开此页面,当我按下按钮将我带到此活动时,它停止了。
这只是与我的问题有关的代码部分。
答案 0 :(得分:0)
在onCreate之外,错误消失了
将计数和按钮设置为字段是正确的。它们需要是onCreate
之外的范围变量但应用程序无法打开此页面
我认为它确实尝试打开,因为您说可以单击按钮
并且当我按下按钮将我带到该活动时它会停止
您需要检查logcat才能知道为什么Activity无法打开
我建议暂时从“活动”中删除“地图片段”,检查要在onCreate中加载的XML,并确保要查找的两个ID实际上都在该XML文件中
此外,Java变量名或XML ID均应以大写字母开头