
org.androidannotations.roboguice.annotations.RoboGuice Maven / Gradle / Ivy
/**
* Copyright (C) 2010-2016 eBusiness Information, Excilys Group
* Copyright (C) 2016-2018 the AndroidAnnotations project
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed To in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/
package org.androidannotations.roboguice.annotations;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
/**
*
* Should be used on Activity classes that use the RoboGuice framework.
*
*
*
* Example :
*
*
* @EActivity(R.layout.main)
* @RoboGuice({ AstroListener.class, AnotherListener.class })
* public class AstroGirl extends Activity {
*
* @ViewById
* EditText edit;
*
* @Inject
* GreetingService greetingService;
*
* @Click
* void button() {
* String name = edit.getText().toString();
* greetingService.greet(name);
* }
* }
*
* public class AstroListener {
*
* @Inject
* Context context;
*
* public void doSomethingOnResume(@Observes OnResumeEvent onResume) {
* Toast.makeText(context, "Activity has been resumed", Toast.LENGTH_LONG).show();
* }
* }
*
*
*
*
* @see RoboGuiceIntegration
*/
@Retention(RetentionPolicy.CLASS)
@Target(ElementType.TYPE)
public @interface RoboGuice {
/**
* The RoboGuice listener classes to bind to this activity. Will add an
* injected listener field to the subclass.
*
* @return the RoboGuice listener classes
*/
Class>[] value() default {};
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy