0

私のアプリケーションでは、サイドナビゲーション メニュータブ フラグメントにSherlockFragmentを使用しています。

ここで、 内部でOnNewIntent関数を使用する位置を取得しましたSherlockFragment。しかし、のようなエラーを返します"The method onNewIntent(Intent) of type classname must override or implement a supertype method"

コード:

 public class MyClass extends SherlockFragment {
    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
            Bundle savedInstanceState) {
        // Get the view from Twitter.xml
        View view = inflater.inflate(R.layout.activity, container, false);

            return view;
    }
        @Override
        protected void onNewIntent(Intent intent) {
            super.onNewIntent(intent);

        }
    }

誰でもこれを解決する方法を教えてもらえますか?

4

1 に答える 1

0

フラグメント内の onNewIntent にアクセスしたい場合、onNewIntent はアクティビティの一部であることは不可能であるため、このメソッドをオーバーライドしてアクティビティに配置し、経由でインテントにアクセスする必要があります

getActivity().getIntent()

Activity 内に onNewIntent を配置する必要があります

public class MyClass extends SherlockActivity {
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    @Override
    protected void onNewIntent(Intent intent) {
        super.onNewIntent(intent);
          //inside onNewIntent update your origional Intent by calling 
         setIntent(intent

    }
}

これで、このアクティビティで getIntent() を呼び出すたびに、最新のインテントが得られます

于 2014-08-05T11:31:08.660 に答える