-1
我在導航菜單itemClick中使用了它,但它顯示上面的錯誤。我應該怎麼做才能刪除它?錯誤的第二個參數類型。發現:'com.sagar.kugeclass.NotificationActivity',必需:'android.support.v4.app.Fragment'
if (id == R.id.item_alarm){
FragmentManager manager = getSupportFragmentManager();
manager.beginTransaction().replace(R.id.fragment_container, new NotificationActivity()).commit();
/*Wrong 2nd argument type. Found: 'com.sagar.kugeclass.NotificationActivity', required: 'android.support.v4.app.Fragment'
,這是我NotificationActivity,我要的是點擊抽屜式導航欄菜單項時顯示:
import android.app.Activity;
import android.app.NotificationManager;
import android.app.PendingIntent;
import android.content.Context;
import android.content.Intent;
import android.os.Build;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.design.widget.FloatingActionButton;
import android.support.v4.app.Fragment;
import android.support.v4.app.NotificationCompat;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.support.v7.widget.Toolbar;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import com.sagar.adapters.RecyclerAdapter;
import com.sagar.models.CardItemModel;
import java.util.ArrayList;
import java.util.List;
/**
* A simple {@link Fragment} subclass.
*/
public class NotificationActivity extends AppCompatActivity implements View.OnClickListener {
private Button alarmButton;
private Context context;
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.notification_activity_layout);
alarmButton = (Button) findViewById(R.id.alarmButton);
alarmButton.setOnClickListener(this);
}
@Override
public void onClick(View view){
NotificationManager notificationManager = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE);
Intent repeating_intent = new Intent(context,Repeating_activity.class);
repeating_intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
PendingIntent pendingIntent = PendingIntent.getActivity(context,100,repeating_intent, PendingIntent.FLAG_UPDATE_CURRENT);
NotificationCompat.Builder builder = (NotificationCompat.Builder) new NotificationCompat.Builder(context)
.setContentIntent(pendingIntent)
.setSmallIcon(android.R.drawable.arrow_up_float)
.setContentTitle("Title")
.setContentText("Content")
.setAutoCancel(true);
notificationManager.notify(100,builder.build());
}
}
我試過這個「Intent intent = new Intent(MainActivity.this,NotificationActivity.class); startActivity(intent);」但它不起作用。 –
使用'''startActivity(Intent)'''時是否有任何錯誤?在AndroidManifest.xml中是否正確聲明瞭NotificationActivity? – ahasbini
@DineshNeupane:但是,這是爲了開始新的活動。我正在討論在片段事務中使用活動而不是片段。將其更改爲片段。 –