我是Android Fragments的新手,我想知道如何DatePicker在简单Fragment而不是a中显示或实现FragmentActivity.
例如,我的班级名称是:
public class FragmentAddCard extends Fragment {
}
Run Code Online (Sandbox Code Playgroud)
谢谢.
将我现有的项目迁移到Android Studio 3.1后,它没有编译.以下是日志详细信息:
org.gradle.api.tasks.TaskExecutionException:任务':app:mergeReleaseResources'的执行失败.在org.gradle上的org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:100)org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:70) .api.internal.tasks.execution.OutputDirectoryCreatingTaskExecuter.execute(OutputDirectoryCreatingTaskExecuter.java:51)在org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:62)在org.gradle.api.internal .tasks.execution.ResolveTaskOutputCachingStateExecuter.execute(ResolveTaskOutputCachingStateExecuter.java:54)在org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:60)在org.gradle.api.internal.tasks.execution org.gradle.api.internal.tasks.execu上的.skipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:97)org.gradle.api.internal.tasks.execution.CleanupStaleOutputsExecuter.execute(CleanupStaleOutputsExecuter.java:87)在org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter的org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:52)中的.ResolveTaskArtifactStateTaskExecuter.execute(ResolveTaskArtifactStateTaskExecuter.java:52).执行(SkipOnlyIfTaskExecuter.java:54)org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43)at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter. java:34)at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter $ EventFiringTaskWorker $ 1.run(DefaultTaskGraphExecuter.java:248)org.gradle.internal.progress.DefaultBuildOperationExecutor $ RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:336)at org. gradle.internal.progress.DefaultBuildOperationExecutor $ RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:328)org.gradle.internal.progress.DefaultBuild 在Org.gradle.internal.progress.DefaultBupeOperationExecutor.run上的OperationExecutor.execute(DefaultBuildOperationExecutor.java:199)org.gradle.execution.taskgraph.DefaultTaskGraphExecuter $ EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:241)在org.gradle.execution.taskgraph.DefaultTaskGraphExecuter $ EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:230)在org.gradle.execution.taskgraph.DefaultTaskPlanExecutor $ TaskExecutorWorker.processTask(DefaultTaskPlanExecutor.java:123)在org.gradle.execution.taskgraph .DefaultTaskPlanExecutor $ TaskExecutorWorker.access $ 200(DefaultTaskPlanExecutor.java:79)org.gradle.execution.taskgraph.DefaultTaskPlanExecutor $ TaskExecutorWorker $ 1.execute(DefaultTaskPlanExecutor.java:104)at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor $ TaskExecutorWorker $ 1.执行(DefaultTaskPlanExecutor.java:98)org.gradle.execution.taskgraph.DefaultTaskExecutionPlan.execute(DefaultTaskExecutionPlan.jav)a:626)org.gradle.execution.taskgraph.DefaultTaskExecutionPlan.executeWithTask(DefaultTaskExecutionPlan.java:581)org.gradle.execution.taskgraph.DefaultTaskPlanExecutor $ TaskExecutorWorker.run(DefaultTaskPlanExecutor.java:98)at org.gradle.internal .concurrent.ExecutorPolicy $ CatchAndRecordFailures.onExecute(ExecutorPolicy.java:63)at org.gradle.internal.concurrent.ManagedExecutorImpl $ 1.run(ManagedExecutorImpl.java:46)at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java: 1142)java.util.concurrent.ThreadPoolExecutor $ Worker.run(ThreadPoolExecutor.java:617)at org.gradle.internal.concurrent.ThreadFactoryImpl $ ManagedThreadRunnable.run(ThreadFactoryImpl.java:55)at java.lang.Thread.run (Thread.java:745)引起:com.android.build.gradle.tasks.ResourceException:错误:java.util.concurrent.ExecutionException:com.android.builder.internal.aapt.v2.Aapt2Exception:AAPT2错误:检查日志以获取详细信息,请访问com.android.build.gradle.tasks.MergeResources.doFullTaskActio n(MergeResources.java:296)位于sun.reflect.DelegatingMethodAccessorImpl的sun.reflect.GeneratedMethodAccessor352.invoke(未知来源)的com.android.build.gradle.internal.tasks.IncrementalTask.taskAction(IncrementalTask.java:106).在org.gradle.api的org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:73)的java.lang.reflect.Method.invoke(Method.java:498)中调用(DelegatingMethodAccessorImpl.java:43) .internal.project.taskfactory.IncrementalTaskAction.doExecute(IncrementalTaskAction.java:46)位于org.gradle.api.internal.project的org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:39) .taskfactory.StandardTaskAction.execute(StandardTaskAction.java:26)atg.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter $ 1.run(ExecuteActionsTaskExecuter.java:121)org.gradle.internal.progress.DefaultBuildOperationExecutor $ RunnableBuildOperationWorker.在org.gradle.internal.progress.Defa执行(DefaultBuildOperationExecutor.java:336)ultBuildOperationExecutor $ RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:328)org.gradle.internal.progress.DefaultBupeOperationExecutor.execute(DefaultBuildOperationExecutor.java:199)org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:110) at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:110)at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:92)... 32更多引起:错误:java.util.concurrent.ExecutionException:com.android.builder.internal.aapt.v2.Aapt2Exception:AAPT2错误:检查日志以获取com.android.ide.common.res2.MergedResourceWriter.end上的详细信息( MergedResourceWriter.java:332)com.android.ide.common.res2.DataMerger.mergeData(DataMerger.java:301)at com.android.ide.common.res2.ResourceMerger.mergeData(ResourceMerger.java:412)at com .android.build.gradle.tasks.Merg eResources.doFullTaskAction(MergeResources.java:285)... 47更多抑制:java.lang.RuntimeException:某些文件处理失败,请参阅com.android.builder.internal.aapt.QueuedResourceProcessor.waitForAll(QueuedResourceProcessor.java)中的详细信息日志:121)com.android.builder.internal.aapt.QueuedResourceProcessor.end(QueuedResourceProcessor.java:141)com的com.android.builder.internal.aapt.v2.QueueableAapt2.close(QueueableAapt2.java:104). android.build.gradle.tasks.MergeResources.doFullTaskAction(MergeResources.java:293)... 47更多引起:java.util.concurrent.ExecutionException:java.util.concurrent.ExecutionException:com.android.builder.internal. …
android gradle android-studio android-gradle-plugin android-studio-3.1
我想知道如何"BACK Button"在设备上检测硬盘或软盘?我搜索了但大多数时候我发现了这段代码
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0) {
// do something on back.
return true;
}
return super.onKeyDown(keyCode, event);
}
Run Code Online (Sandbox Code Playgroud)
但我只需要检测设备上是否存在BACK按钮,或者不是硬或软的形式.
我在linearlayout horizontalscrollview中动态创建按钮,然后单击我获得选定的按钮位置.
我想知道如何更改所选按钮的文字颜色?
这是我的代码.
String[] categories = {"SUN","MON", "TUS", "WED", "THU", "FRI", "SAT", "SUN","MON", "TUS", "WED", "THU", "FRI", "SAT"};
private LinearLayout ll;
Button btn;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
ll = (LinearLayout) findViewById(R.id.hsvLinearLayout);
for(int i = 0; i < categories.length; i++) {
btn = new Button(this);
btn.setText(categories[i]);
btn.setBackgroundColor(Color.parseColor("#ffffff"));
btn.setOnClickListener(buttonClick);
ll.addView(btn);
int idx = ll.indexOfChild(btn);
btn.setTag(Integer.toString(idx));
// btn.setId(idx);
}
}
OnClickListener buttonClick = new OnClickListener() {
public void onClick(View v) {
String idxStr = Integer.toString(ll.indexOfChild(v));
//(String)v.getTag();
Toast.makeText(MainActivity.this, idxStr, 6000).show(); …Run Code Online (Sandbox Code Playgroud)