简体   繁体   English

从MainActivity(Android)访问另一个类中的公共无效

[英]Access public void in another class from MainActivity (Android)

I have two public voids in a class called Flashlight, these are: 我在一个名为Flashlight的类中有两个公共空隙,分别是:

public void turnOnFlashLight() 公共无效turnOnFlashLight()

public void turnOffFlashLight() 公共无效turnOffFlashLight()

How can I access these within Main Activity? 如何在“主要活动”中访问这些内容?

I've found many guides for using another class in MainActivity but not for accessing only a specific part (in this case I'm trying to turn the flashlight on or off). 我已经找到了许多指南,用于在MainActivity中使用另一个类,而不是仅用于访问特定部分(在这种情况下,我试图打开或关闭手电筒)。

This is he contents of MainActivity 这是MainActivity的内容

public class MainActivity extends android.support.v7.app.ActionBarActivity {

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

public void httpserver() {
    AsyncHttpServer server = new AsyncHttpServer();
    java.util.List<WebSocket> _sockets = new java.util.ArrayList<WebSocket>();
    server.listen(5000);
    server.get("/flashon", new HttpServerRequestCallback() {
        static final int CAMERA_PIC_REQUEST = 0;
        public void onRequest(AsyncHttpServerRequest request, AsyncHttpServerResponse response) {
            response.send("Ok");
            Flashlight.turnOnFlashLight();

        }
    });
}
}

This is the Flashlight class https://stackoverflow.com/a/31289731/6696740 这是Flashlight类https://stackoverflow.com/a/31289731/6696740

Thank you :) 谢谢 :)

Make sure that class is imported in MainActivity. 确保在MainActivity中导入了该类。 You should be able to just use Flashlight.turnOnFlashLight() or Flashlight.turnOffFlashLight( ). 您应该只可以使用Flashlight.turnOnFlashLight()Flashlight.turnOffFlashLight( )。 You might also want to create an instance of the Flashlight class like Flashlight flashlight = Flashlight.newInstance() , then flashlight.turnOnFlashLight() or Flashlight.turnOffFlashLight(). 您可能还想创建Flashlight类的实例,例如Flashlight flashlight = Flashlight.newInstance() ,然后创建flashlight.turnOnFlashLight()或Flashlight.turnOffFlashLight()。

In MainActivity (Assuming FlashLight class constructor does not need any input): 在MainActivity中(假设FlashLight类的构造函数不需要任何输入):

import Flashlight;
...
//where you need to call those methods
Flashlight flashLight = new Flashlight();
flashlight.turnOnFlashLight();
//OR
flashlight.turnOffFlashLight();

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM