gpt4 book ai didi

java - onItemSelectedListner 实现抽象方法

转载 作者:搜寻专家 更新时间:2023-11-01 09:35:24 25 4
gpt4 key购买 nike

在这个论坛的帮助下,我成功地协调了以下编码,但是当我运行 Android 模拟器时,它指出我需要将公共(public)类 Main3Activity 更改为抽象或实现 onItemSelectedListner 的抽象方法。如果 Main3Activity 更改为抽象,则无法实例化,因此假设我需要在 onItemSelectedListner 中的某处进行更改但无法确定是什么。感谢您提供任何帮助。

public class Main3Activity extends AppCompatActivity implements OnItemSelectedListener {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main3);
final Spinner spinner = (Spinner) findViewById(R.id.spinner);
final Spinner spinner2 = (Spinner) findViewById(R.id.spinner2);
final TextView textView8=(TextView) findViewById(R.id.textView8);

spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener()
{
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {

if (spinner.getSelectedItem().toString().equals("Selection 1")
&& spinner2.getSelectedItem().toString().equals("Option 2"))
{
textView8.setText("3");
}
}

@Override
public void onNothingSelected(AdapterView<?> parent) {

}
});

}

最佳答案

如果您在 setOnItemSelectedListener() 方法内创建 OnItemSelectedListener 的新实例,则无需让 MainActivity 实现该接口(interface)(因为您已经在处理它)。

您可以删除 implements OnItemSelectedListener 并且您应该可以开始了。您的类声明将如下所示:

public class Main3Activity extends AppCompatActivity 

如果您想将监听器作为 Activity 的一部分,则需要在 Activity 内部实现接口(interface)所需的方法。例如:

@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
// TODO: Do something here
}

@Override
public void onNothingSelected(AdapterView<?> parent) {
// TODO: Do something here
}

然后设置监听器:

spinner.setOnItemSelectedListener(this);

有关 Java 中的接口(interface)的更多信息,这里有一些很好的读物:https://www.tutorialspoint.com/java/java_interfaces.htm

关于java - onItemSelectedListner 实现抽象方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43670555/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com