在哪里实例化一个匿名的class?
where to instantiate an anonymous class?
我正在尝试使用此 link https://developer.android.com/training/connect-devices-wirelessly/nsd.html
中的代码
"from Discover Services on the Network."
我复制并粘贴代码如下:
import android.net.nsd.NsdManager;
import android.net.nsd.NsdServiceInfo;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button aButton = (Button) findViewById(R.id.MyButton);
aButton.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
// there is an error in the next line, ";" expected.
// but I do not know where to put ; exactly
public void initializeRegistrationListener() {
mRegistrationListener = new NsdManager.RegistrationListener() {
@Override
public void onServiceRegistered(NsdServiceInfo NsdServiceInfo) {
// Save the service name. Android may have changed it in order to
// resolve a conflict, so update the name you initially requested
// with the name Android actually used.
mServiceName = NsdServiceInfo.getServiceName();
}
@Override
public void onRegistrationFailed(NsdServiceInfo serviceInfo, int errorCode) {
// Registration failed! Put debugging code here to determine why.
}
@Override
public void onServiceUnregistered(NsdServiceInfo arg0) {
// Service has been unregistered. This only happens when you call
// NsdManager.unregisterService() and pass in this listener.
}
@Override
public void onUnregistrationFailed(NsdServiceInfo serviceInfo, int errorCode) {
// Unregistration failed. Put debugging code here to determine why.
}
};
} }
});
}
}
但是这一行有错误"public void initializeRegistrationListener()",";"预期的。但我不知道把“;”放在哪里究竟是什么问题,还是我看不到,有人可以指导我吗?
PS:我正在尝试让我的 phone 发现我在笔记本电脑上使用 javascript 创建的 Mdns 服务,我没有 Java 的经验,但我需要 运行 之前的代码来测试我已经创建的服务。
首先,您需要一个包含按钮的 xml(此按钮将具有 android:id="@+id/mybutton"
,这是您必须在 findViewById(R.id.mybutton)
上使用的 ID。
在您 activity 的 onCreate
方法中,您将编写您向我们展示的代码,您可以开始了。
又是一小步,如果你自己写了xml,一定要在onCreate中有这一行
setContentView(R.layout.yourxml)
我正在尝试使用此 link https://developer.android.com/training/connect-devices-wirelessly/nsd.html
中的代码"from Discover Services on the Network." 我复制并粘贴代码如下:
import android.net.nsd.NsdManager;
import android.net.nsd.NsdServiceInfo;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button aButton = (Button) findViewById(R.id.MyButton);
aButton.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
// there is an error in the next line, ";" expected.
// but I do not know where to put ; exactly
public void initializeRegistrationListener() {
mRegistrationListener = new NsdManager.RegistrationListener() {
@Override
public void onServiceRegistered(NsdServiceInfo NsdServiceInfo) {
// Save the service name. Android may have changed it in order to
// resolve a conflict, so update the name you initially requested
// with the name Android actually used.
mServiceName = NsdServiceInfo.getServiceName();
}
@Override
public void onRegistrationFailed(NsdServiceInfo serviceInfo, int errorCode) {
// Registration failed! Put debugging code here to determine why.
}
@Override
public void onServiceUnregistered(NsdServiceInfo arg0) {
// Service has been unregistered. This only happens when you call
// NsdManager.unregisterService() and pass in this listener.
}
@Override
public void onUnregistrationFailed(NsdServiceInfo serviceInfo, int errorCode) {
// Unregistration failed. Put debugging code here to determine why.
}
};
} }
});
}
}
但是这一行有错误"public void initializeRegistrationListener()",";"预期的。但我不知道把“;”放在哪里究竟是什么问题,还是我看不到,有人可以指导我吗?
PS:我正在尝试让我的 phone 发现我在笔记本电脑上使用 javascript 创建的 Mdns 服务,我没有 Java 的经验,但我需要 运行 之前的代码来测试我已经创建的服务。
首先,您需要一个包含按钮的 xml(此按钮将具有 android:id="@+id/mybutton"
,这是您必须在 findViewById(R.id.mybutton)
上使用的 ID。
在您 activity 的 onCreate
方法中,您将编写您向我们展示的代码,您可以开始了。
又是一小步,如果你自己写了xml,一定要在onCreate中有这一行
setContentView(R.layout.yourxml)