Когда я создаю свое приложение в первый раз, компилятор Java не может отобразить следующие ошибки:
- ошибка: не удается найти класс символов MyGenericDialogFragment
- ошибка: пакет MyGenericDialogFragment не существует
- ошибка: метод не переопределяет или не реализует метод из супертипа
Но во второй раз все в порядке.
Я используюDialogFragment в Activity
Я создаю абстрактный класс, который объявляет интерфейс и будет расширен определенным DialogFragment:
public abstract class MyGenericDialogFragment extends DialogFragment {
protected OnCompleteListener mListener;
public static interface OnCompleteListener {
public abstract void onComplete(String time);
}
@Override
public void onAttach(Context context) {
super.onAttach(context);
try {
this.mListener = (OnCompleteListener)context;
}
catch (final ClassCastException e) {}
}
public OnCompleteListener getmListener() {
return mListener;
}
}
Деятельность, в которой создается DialogFragment, реализует интерфейс, объявленный внутри абстрактногокласс:
public class MainActivity extends AppCompatActivity implements MyGenericDialogFragment.OnCompleteListener{
...
// Create Dialog that extends MyGenericDialogFragment
MySpecificDialog dial = new MyDialog();
dial.show(getSupportFragmentManager(),"tag");
...
...
@Override
public void onComplete(String text) {
//do something whit text
}
Есть предложения?
РЕДАКТИРОВАТЬ: Это трассировка стека
org.gradle.api.internal.tasks.compile.CompilationFailedException: ошибка компиляции;см. вывод ошибки компилятора для деталей.в org.gradle.api.internal.tasks.compile.JdkJavaCompiler.execute (JdkJavaCompiler.java:52) в org.gradle.api.internal.tasks.compile.JdkJavaCompiler.execute (JdkJavaCompiler.java:dleg) или в.api.internal.tasks.compile.NormalizingJavaCompiler.delegateAndHandleErrors (NormalizingJavaCompiler.java:98) в org.gradle.api.internal.tasks.compile.NormalizingJavaCompiler.execute (NormalizingJavaCompiler.javaingra.grag):).tasks.compile.NormalizingJavaCompiler.execute (NormalizingJavaCompiler.java:37) в org.gradle.api.internal.tasks.compile.incremental.SelectiveCompiler.execute (SelectiveCompiler.java:73) в org.gradle.api.internal..compile.incremental..compile.incremental.IncrementalResultStoringDecorator.execute (IncrementalResultStoringDecorator.java:27.) в org.gradle.api.tasks.compile.JavaCompile.performCompilation (JavaCompile.java:156) в org.gradle.api.tasks.compile.JavaCompile.compile (JavaCompile.java:126) в com.android.build.gradle.tasks.factory.AndroidJavaCompile.compile (AndroidJavaCompile.java:92) в sun.reflect.GeneratedMethodAccessor581.invoke (Неизвестный источник) в sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccess.jp.Method.invoke (Method.java:498) в org.gradle.internal.reflect.JavaMethod.invoke (JavaMethod.java:73) в org.gradle.api.internal.project.taskfactory.IncrementalTaskAction.doExecute (IncrementalTaskAction.java)50) в org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute (StandardTaskAction.java:39) в org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute (StandardTaskAction.java:26) в org.gradle.api.internal.tasks.execution.ExecuteAterk(ExecuteActionsTaskExecuter.java:124) в org.gradle.internal.progress.DefaultBuildOperationExecutor $ RunnableBuildOperationWorker.execute (DefaultBuildOperationExecutor.java:336) в org.gradle.internal.progress.DefaultBuildOperationExecutor $ RunnableBuildOperationWorker.execute (DefaultBuildOperationExecutor.java:328) вorg.gradle.internal.progress.DefaultBuildOperationExecutor.execute (DefaultBuildOperationExecutor.java:199) в org.gradle.internal.progress.DefaultBuildOperationExecutor.run (DefaultBuildOperationExecutor.java:110) в org.gradletionas.in.ExecuteActionsTaskExecuter.executeAction (ExecuteActionsTaskExecuter.java:113)в org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions (ExecuteActionsTaskExecuter.java:95) в org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute:gragra.tj.api.internal..tasks.execution.ResolveTaskOutputCachingStateExecuter.execute (ResolveTaskOutputCachingStateExecuter.java:54) в org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute.a.as.gra..SkipEmptySourceFilesTaskExecuter.execute (SkipEmptySourceFilesTaskExecuter.java:101) в org.gradle.api.internal.tasks.execution.FinalizeInputFilePropertiesTaskExecuter.execute (FinalizeInputFileProgra.jpg) org.jpgapi.internal.ЗадачиExecuteAtMostOnceTaskExec..java: 256) в org.gradle.internal.progress.DefaultBuildOperationExecutor $ RunnableBuildOperationWorker.execute (DefaultBuildOperationExecutor.java:336) в org.gradle.internal.progress.DefaultBuildOperationExecutor $ RunnableBuildOperationWorker.execute (DefaultBuildOperationExecutor.java:328) по адресу org.gradle.internal.progress.DefaultBuildOperationExecutor.execute (DefaultBuildOperationExecutor.java:199) по адресу org.gradle.internalecava.OUв org.gradle.execution.taskgraph.DefaultTaskGraphExecuter $ EventFiringTaskWorker.execute (DefaultTaskGraphExecuter.java:249) в org.gradle.execution.taskgraph.DefaultTaskGraphExecuter $ EventFiringTaskWorktion.gras.ecuas.grag.jg ().DefaultTaskPlanExecutor $ TaskExecutorWorker.processTask (DefaultTaskPlanExecutor.java:123) в org.gradle.execution.taskgraph.DefaultTaskPlanExecutor $ TaskExecutorWorker.access $ 200 (DefaultTaskPlan_Exception(DefaultTaskPlanExecutor.java:104) в org.gradle.execution.taskgraph.DefaultTaskPlanExecutor $ TaskExecutorWorker $ 1.execute (DefaultTaskPlanExecutor.java:98) в org.gradle.execution.taskgraph.DefaultTaskExecutionPlan.execute (DefaultTaskExecutionPlan.java:663) в org.gradle.execution.taskgraph.DefaultTaskExecutionTasas.kjorg.gradle.execution.taskgraph.DefaultTaskPlanExecutor $ TaskExecutorWorker.run (DefaultTaskPlanExecutor.java:98) в org.gradle.internal.concurrent.ExecutorPolicy $ CatchAndRecordFailures.onExecute (Executorggrain.in). at.ManagedExecutorImpl $ 1.run (ManagedExecutorImpl.java:46) в java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1142) в java.util.concurrent.ThreadPoolExecutor $ Worker.roj.jun ().gradle.internal.concurrent.ThreadFactoryImpl $ ManagedThreadRunnable.run (ThreadFactoryImpl.java:55)at java.lang.Thread.run (Thread.java:745)