public void setNavigationVisibility() { View navigation_bottom = mView.getActivity().findViewById(R.id.navigation_bottom); if (navigation_bottom.getVisibility() != View.VISIBLE) { navigation_bottom.setVisibility(View.VISIBLE); } } public void changeFocus(View view) { view.setFocusable(true); view.setFocusableInTouchMode(true); if (!view.requestFocus()) { Log.e(TAG, "changeFocus: Error!"); return; } if (view instanceof EditText) { InputMethodManager imm = (InputMethodManager) YyApplication.get().getSystemService(Context.INPUT_METHOD_SERVICE); imm.showSoftInput(view, 0); } }
时间: 2024-02-14 22:08:07 浏览: 40
这两段代码都是 Android 开发中的方法。
第一段代码 `setNavigationVisibility()` 的作用是设置底部导航栏的可见性。首先通过 `getActivity()` 获取当前视图所在的 Activity,然后通过 `findViewById()` 获取指定 ID 的视图,这里是底部导航栏。接着判断该视图的可见性,如果不可见则将其设置为可见。
第二段代码 `changeFocus(View view)` 的作用是改变视图的焦点。通过调用 `setFocusable()`、`setFocusableInTouchMode()` 和 `requestFocus()` 方法来设置视图的焦点状态。如果该视图是 `EditText` 类型,则还会弹出软键盘。
相关问题
public AddDiaryController(@NonNull AddDiaryFragment addDiaryFragment) { diaryHelper = DiaryHelper.getInstance(YyApplication.get()); mView = addDiaryFragment; mView.setHasOptionsMenu(true); } public void addDiaryToRepository(String title, String desc,String time, String emo) { if (title.isEmpty() || desc.isEmpty()) { showMessage(YyApplication.get().getString(R.string.add_failed)); return; } diaryHelper.insert(title, desc,time,emo); showMessage(YyApplication.get().getString(R.string.add_success)); } private void showMessage(String message) { Toast.makeText(mView.getContext(), message, Toast.LENGTH_SHORT).show(); } public void closeWriteDiary(FragmentManager fragmentManager, Fragment fragment) { ActivityUtils.removeFragmentTOActivity(fragmentManager, fragment); ActivityUtils.addFragmentToActivity(fragmentManager, new DiariesFragment(), R.id.content); } public void setNavigationVisibility() { View navigation_bottom = mView.getActivity().findViewById(R.id.navigation_bottom); if (navigation_bottom.getVisibility() != View.VISIBLE) { navigation_bottom.setVisibility(View.VISIBLE); } } public void changeFocus(View view) { view.setFocusable(true); view.setFocusableInTouchMode(true); if (!view.requestFocus()) { Log.e(TAG, "changeFocus: Error!"); return; } if (view instanceof EditText) { InputMethodManager imm = (InputMethodManager) YyApplication.get().getSystemService(Context.INPUT_METHOD_SERVICE); imm.showSoftInput(view, 0); } }
这是一个用于添加日记的控制器,它包含了以下几个方法:
1. 构造函数:接受一个 AddDiaryFragment 参数,并初始化 DiaryHelper 和 mView。
2. addDiaryToRepository():将传入的日记标题、描述、时间和情绪插入到 DiaryHelper 中,并显示添加成功或添加失败的提示信息。
3. showMessage():显示 Toast 消息。
4. closeWriteDiary():将当前 Fragment 从 FragmentManager 中移除,并添加 DiariesFragment。
5. setNavigationVisibility():设置底部导航栏可见性。
6. changeFocus():设置 View 的聚焦状态,并弹出软键盘(如果 View 是 EditText)。
void ControlComply::SetNavigationData(robot::navigation_msg navigation_t) { int flag = 0; string rtk_state = "rtk_fixed"; // if(mTaskType != ADAPTIVEHOOK) mNavData = navigation_t; // std::cout<<"control location 99999999999999999999 ="<< mNavData.xAxis<<std::endl; if (strcmp(mNavData.rtkState.c_str(), rtk_state.c_str()) == 0) { mGpsFixed = true; } else { mGpsFixed = false; } mControlData.vehicleSpeed = mNavData.gpsSpeed; cur_vehicle_x = mNavData.xAxis; cur_vehicle_y = mNavData.yAxis; cur_vehicle_heading = mNavData.heading; cur_pos.x_axis = mNavData.xAxis; cur_pos.y_axis = mNavData.yAxis; }
这段代码是一个函数`SetNavigationData`的实现,它接收一个`navigation_msg`类型的参数`navigation_t`。函数的作用是根据接收到的导航数据更新控制相关的变量。
首先,函数定义了一个整型变量`flag`并初始化为0,还定义了一个字符串变量`rtk_state`并初始化为"rtk_fixed"。
接着,函数将参数`navigation_t`赋值给了变量`mNavData`。
然后,函数使用`strcmp`函数将变量`mNavData.rtkState`和`rtk_state`进行比较。如果两个字符串相等,即导航数据的rtk状态为"rtk_fixed",则将变量`mGpsFixed`设置为true;否则,将变量`mGpsFixed`设置为false。
接下来,函数分别将导航数据中的`gpsSpeed`、`xAxis`、`yAxis`和`heading`赋值给了变量`mControlData.vehicleSpeed`、`cur_vehicle_x`、`cur_vehicle_y`和`cur_vehicle_heading`。
最后,函数将导航数据中的`xAxis`和`yAxis`分别赋值给了变量`cur_pos.x_axis`和`cur_pos.y_axis`。
总结来说,这段代码的功能是根据接收到的导航数据更新控制相关的变量,并根据导航数据中的rtk状态更新变量`mGpsFixed`的值。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![psd](https://img-home.csdnimg.cn/images/20210720083646.png)