学习这个并阅读文档我无法理解我应该放什么viewId
Navigation.findNavController(Activity, @IdRes int viewId)
Run Code Online (Sandbox Code Playgroud)
我为导航架构组件做了Codelab,但那是 Kotlin 代码。我需要Java。
Button我无法让它工作我希望此屏幕上的注销preferences有一个ClickListener
它是这样的:
\n\n\n\n这里\xc2\xb4s 代码和buttonView始终为 NULL:
class PreferencesFragment : PreferenceFragmentCompat() {\n\n lateinit var activity: Context\n\n private var prefs: SharedPreferences = BleApplication.getInstance().getDefaultSharedPreferences()\n\n override fun onAttach(context: Context?) {\n super.onAttach(context)\n activity = requireActivity()\n }\n\n\n override fun onViewCreated(view: View, savedInstanceState: Bundle?) {\n super.onViewCreated(view, savedInstanceState)\n val buttonView = view.findViewById<View>(R.id.btn_sign_out)\n\n if (buttonView != null) {\n buttonView.setOnClickListener {\n Toast.makeText(getActivity(), "You clicked me.", Toast.LENGTH_SHORT).show()\n }\n }\n // Hide the divider\n/* setDivider(ColorDrawable(Color.TRANSPARENT))\n setDividerHeight(0)*/\n }\n\n override fun onCreatePreferences(savedInstanceState: Bundle?, rootKey: String?) …Run Code Online (Sandbox Code Playgroud) 当我启动应用程序时一切正常,但是当我旋转到横向时它崩溃了,因为在Fragment那里有一个字段是NULL.
我不使用setRetainInstance(true)或添加 FragmentsFragmentManager在应用程序启动和应用程序旋转时创建新的 Fragments。
在Activity OnCreate()我创建Fragment并将它们添加到viewPager这样的。
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
ParentBasicInfoFragment parentBasicInfoFragment = new ParentBasicInfoFragment();
ParentUTCFragment parentUTCFragment = new ParentUTCFragment();
ParentEventsFragment parentEventsFragment = new ParentEventsFragment();
this.mFragments = new ArrayList<>();
this.mFragments.add(parentBasicInfoFragment);
this.mFragments.add(parentUTCFragment);
this.mFragments.add(parentEventsFragment);
this.viewpage.setOffscreenPageLimit(3);
setCurrentTab(0);
this.viewpage.setAdapter(new MainActivityPagerAdapter(getSupportFragmentManager(), this.mFragments));
}
Run Code Online (Sandbox Code Playgroud)
然后我在应用程序上有一个测试按钮,当我按下它时会像
public void test(View view) {
((BaseFragment) MainActivity.this.mFragments.get(MainActivity.this.viewpage.
getCurrentItem())).activityNotifiDataChange("hello");
}
Run Code Online (Sandbox Code Playgroud)
这将工作和当前Fragments的ViewPager有方法, activityNotifiDataChange()正在调用,一切正常。
当我旋转应用程序并按下按钮做同样的事情时,activityNotifiDataChange()它被调用了,但是有一个空指针异常,因为 ArrayList<Fragment> mFragment它现在是 NULL。
这是一个显示此行为的小示例 Android …
我阅读了Cloud Fucntions文档,并成功进行了部署,并且运行良好。在我的Firebase中,我有两个项目,调试和生产,它们具有不同的包名称。
我找不到如何仅将功能部署到生产项目中的调试项目。自从我使用google将Google烧入Firebase并在其中调试/生产项目后,我在哪里更改部署目标。
遵循本React Native 教程:使用 JavaScript教程构建 Android 应用程序。我打开了 Android Studio 并运行了模拟器,我用另一个 Android Studio 应用程序测试了它。
我阅读了下面的输出 - 在设备上构建和安装应用程序以及 - 启动应用程序
但是模拟器不显示应用程序,有什么想法吗?命令输出:
L:\react\PropertyFinder\PropertyFinder>react-native run-android JS 服务器已经运行。在设备上构建和安装应用程序 (cd android && gradlew.bat installDebug)...
任务 :app:installDebug 在 'Nexus_5X_API_27_Android_8.1_ORIO(AVD) - 8.1.0' 上安装 APK 'app-debug.apk' for app:debug 安装在 1 台设备上。
BUILD SUCCESSFUL in 8s 27 个可操作的任务:1 个已执行,26 个最新的“adb”未被识别为内部或外部命令、可运行的程序或批处理文件。启动应用程序(adb shell am start -n com.propertyfinder/com.propertyfinder.MainActivity...
L:\反应\PropertyFinder\PropertyFinder>
继续像这样的similliar问题,我只想得到答案,如果这是一个限制FirebaseDatabase.updateChildren或如果我做错了.
我知道我无法为/ USER指定更新,然后为/ USER/+ getUid()+"/"+"fancy"+"/"+ pushKey指定不同的更新
如果我仍然需要这两个更新是原子的,我该怎么办?
childUpdates.put(USER + "/" + getUid(), map1);
childUpdates.put(USER + "/" + getUid() + "/" + "fancy" + "/" + pushKey, map2);
// Do a deep-path update
ref.updateChildren(childUpdates, new DatabaseReference.CompletionLi....
Run Code Online (Sandbox Code Playgroud)
更新添加说明:
值是字符串,
这是map1
//
// FAN_OUT - User.LAST_VISITED_ADDRESS
//
Map<String, Object> map1 = new HashMap<String, Object>();
map1.put("last_visited_address", "pushKey");
Run Code Online (Sandbox Code Playgroud)
这是map2
//
// FAN_OUT - User.FANCY
//
Map<String, Object> map2 = new HashMap();
map2.put("owner", "a path");
Run Code Online (Sandbox Code Playgroud) 我学习Angular并有一个小问题。如果我像这样将Component放入我的app.component.html中,就可以了,
<body>
<div class="container">
<app-search-books></app-search-books>
</div>
</body>
Run Code Online (Sandbox Code Playgroud)
但是如果我这样配置app-routing.module.ts:
import { NgModule } from '@angular/core';
import { Routes, RouterModule } from '@angular/router';
import { SearchBooksComponent } from './search-books/search-books.component';
const routes: Routes = [
{ path: 'search', component: SearchBooksComponent }
];
@NgModule({
imports: [RouterModule.forRoot(routes)],
exports: [RouterModule]
})
export class AppRoutingModule { }
Run Code Online (Sandbox Code Playgroud)
那什么也没发生 我错过了什么?
这是文件夹search-books / search-books.component.ts中的search-books.component.ts
import { Component, OnInit } from '@angular/core';
@Component({
selector: 'app-search-books',
templateUrl: './search-books.component.html',
styleUrls: ['./search-books.component.scss']
})
export class SearchBooksComponent implements OnInit {
constructor() { }
ngOnInit() …Run Code Online (Sandbox Code Playgroud) android ×4
kotlin ×2
angular ×1
firebase ×1
firebase-cli ×1
react-native ×1
reactjs ×1
routes ×1