简体   繁体   English

如何在片段中使用基础活动?

[英]How to use base activity in fragment?

Here i implemented a emoji-keyboard.在这里我实现了一个表情符号键盘。 For the use of this library , activity extended to EmojiCompatActivity.为了使用这个库,activity扩展为EmojiCompatActivity。

prepareKeyboard(EmojiCompatActivity activity, EmojiEditText input

This is working well in activity.这在活动中运作良好。 While using in fragment i tried this one在片段中使用时,我尝试了这个

prepareKeyboard((ActivityName)getActivity,input)

Here is my MainActivity这是我的主要活动

public class MainActivity extends EmojiCompatActivity {}

And fregment class is而片段类是

public class PagerEmojKeyboard extends Fragment {

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
    View v = inflater.inflate(R.layout.emoji_keyboard, container, false);

    EmojiEditText userMessageInput = getActivity().findViewById(R.id.input_message);
    EmojiKeyboardLayout emojiKeyboardLayout=(EmojiKeyboardLayout) v.findViewById(R.id.keyboard_emoj);
    emojiKeyboardLayout.prepareKeyboard((MainActivity) this.getActivity(),userMessageInput);

    return v;
}

} }

You can refer to the base activity as this.activity .您可以将基本活动称为this.activity

Sometimes, while using fragments, the above method also works.有时,在使用片段时,上述方法也有效。

如果您在 onCreateView 方法中工作,您应该不会遇到问题,但是如果您有其他方法,则必须有一个 View 变量作为全局变量,以便在整个类中使用。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM