Android 无法解析AppcompactActivity、符号r、已选择、getItemPosition

Android 无法解析AppcompactActivity、符号r、已选择、getItemPosition,android,Android,下面的活动被另一个活动调用。该活动显示一个微调器&一旦用户选择,位置将返回到变量p。问题是 无法解析AppActivity 无法解析符号r 无法解析MSelectedListner 无法解析getItemPostion 我已经给出了下面的代码 import android.app.Activity; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.view.Vi

下面的活动被另一个活动调用。该活动显示一个微调器&一旦用户选择,位置将返回到变量p。问题是

  • 无法解析AppActivity
  • 无法解析符号r
  • 无法解析MSelectedListner
  • 无法解析getItemPostion
我已经给出了下面的代码

import android.app.Activity;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.Spinner;

public class MainActivity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    Spinner s1 = (Spinner) findViewById(R.id.spinner1);
    ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this,
            R.array.exchange_input1, android.R.layout.simple_spinner_item);

    adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
    s1.setAdapter(adapter);

}

public class SpinnerActivity extends Activity implements OnItemSelectedListener
{
    public int p;

    public void onItemSelected(AdapterView<?> parent, View s1,int pos, long id)
    {
        p = getItemPosition(pos);
    }
}
}
导入android.app.Activity;
导入android.os.Bundle;
导入android.support.v7.app.AppActivity;
导入android.view.view;
导入android.widget.AdapterView;
导入android.widget.ArrayAdapter;
导入android.widget.Spinner;
公共类MainActivity扩展了AppCompatActivity{
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
微调器s1=(微调器)findViewById(R.id.spinner1);
ArrayAdapter=ArrayAdapter.createFromResource(此,
R.array.exchange\u input1,android.R.layout.simple\u微调器\u项);
setDropDownViewResource(android.R.layout.simple\u微调器\u下拉菜单\u项);
s1.设置适配器(适配器);
}
公共类SpinerActivity扩展活动实现了MSelectedListener
{
公共INTP;
已选择公共位置(AdapterView父视图、视图s1、内部位置、长id)
{
p=getItemPosition(位置);
}
}
}

当您面临这样的问题时,最常见的解决方案是:

单击Build->cleanproject,将执行渐变清理

如果这不起作用,请尝试:

单击构建->重建项目

之后,如果您仍然收到“无法解决符号错误”,请尝试:

单击工具->安卓->与Gradle文件同步项目

如果这些都有效,请关闭Android Studio并再次打开它。如果问题仍然存在,请在此处发布任何更改


关于微调器侦听器,这里有一些注意事项:

  • 您需要将侦听器设置为所需的微调器,在本例中为“s1”,例如:

    s1.setOnItemSelectedListener(此)

  • 您可以将OnItemSelectedListener直接实现到主应用程序 活动

    公共类MainActivity扩展AppCompativeActivity实现AdapterView.OnItemSelectedListener{

然后再加上:

 @Override
    public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
@覆盖
已选择公共视图(AdapterView父视图、视图视图、整型位置、长id){
  • 我还可以观察到,您需要补充:

    `@Override
        public void onNothingSelected(AdapterView<?> parent) {}
    
    `@覆盖
    未选择的公共无效(AdapterView父项){}
    
关于你的公共课堂活动

  • 此外,您不需要“getItemPosition”,只需设置:

    p=pos


我包括了onNothingSelected方法并尝试了给定的选项。错误仍然出现。所有错误?无法解析AppActivity。无法解析符号r。无法解析onItemSelectedListner。无法解析getItemPostion。