Add fragment pager

This commit is contained in:
neslihanturan 2018-05-19 14:54:33 +03:00 committed by maskara
parent 7ddc1a16ba
commit 12cd548b7a
4 changed files with 126 additions and 2 deletions

View file

@ -3,9 +3,12 @@ package fr.free.nrw.commons.review;
import android.content.Context; import android.content.Context;
import android.content.Intent; import android.content.Intent;
import android.os.Bundle; import android.os.Bundle;
import android.support.design.widget.NavigationView; import android.support.design.widget.NavigationView;
import android.support.v4.view.ViewPager;
import android.support.v4.widget.DrawerLayout; import android.support.v4.widget.DrawerLayout;
import android.support.v7.widget.Toolbar; import android.support.v7.widget.Toolbar;
import android.view.Menu; import android.view.Menu;
import android.view.MenuItem; import android.view.MenuItem;
@ -13,7 +16,6 @@ import butterknife.BindView;
import butterknife.ButterKnife; import butterknife.ButterKnife;
import fr.free.nrw.commons.R; import fr.free.nrw.commons.R;
import fr.free.nrw.commons.auth.AuthenticatedActivity; import fr.free.nrw.commons.auth.AuthenticatedActivity;
import fr.free.nrw.commons.di.CommonsDaggerSupportFragment;
/** /**
* Created by root on 18.05.2018. * Created by root on 18.05.2018.
@ -28,6 +30,12 @@ public class ReviewActivity extends AuthenticatedActivity {
@BindView(R.id.drawer_layout) @BindView(R.id.drawer_layout)
DrawerLayout drawerLayout; DrawerLayout drawerLayout;
@BindView(R.id.reviewPager)
ViewPager pager;
public static final int MAX_NUM = 4;
private ReviewPagerAdapter reviewPagerAdapter;
@Override @Override
protected void onAuthCookieAcquired(String authCookie) { protected void onAuthCookieAcquired(String authCookie) {
@ -43,8 +51,12 @@ public class ReviewActivity extends AuthenticatedActivity {
super.onCreate(savedInstanceState); super.onCreate(savedInstanceState);
setContentView(R.layout.activity_review); setContentView(R.layout.activity_review);
ButterKnife.bind(this); ButterKnife.bind(this);
initDrawer(); initDrawer();
reviewPagerAdapter = new ReviewPagerAdapter(getSupportFragmentManager());
pager.setAdapter(reviewPagerAdapter);
//pager.setAdapter(adapter);
reviewPagerAdapter.getItem(0);
} }
@Override @Override
@ -64,6 +76,15 @@ public class ReviewActivity extends AuthenticatedActivity {
return super.onOptionsItemSelected(item); return super.onOptionsItemSelected(item);
} }
/**
* References ReviewPagerAdapter to null before the activity is destroyed
*/
@Override
public void onDestroy() {
//adapter.setCallback(null);
super.onDestroy();
}
/** /**
* Consumers should be simply using this method to use this activity. * Consumers should be simply using this method to use this activity.
* @param context * @param context
@ -74,4 +95,21 @@ public class ReviewActivity extends AuthenticatedActivity {
Intent reviewActivity = new Intent(context, ReviewActivity.class); Intent reviewActivity = new Intent(context, ReviewActivity.class);
context.startActivity(reviewActivity); context.startActivity(reviewActivity);
} }
/*
@Override
public void onYesClicked() {
Log.d("deneme","onYesClicked");
}
@Override
public void onNoClicked() {
Log.d("deneme","onNoClicked");
}
@Override
public void onNotSureClicked() {
Log.d("deneme","onNotSureClicked");
}*/
} }

View file

@ -0,0 +1,46 @@
package fr.free.nrw.commons.review;
import android.os.Bundle;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
import fr.free.nrw.commons.R;
import fr.free.nrw.commons.di.CommonsDaggerSupportFragment;
/**
* Created by root on 19.05.2018.
*/
public class ReviewOutOfContextFragment extends CommonsDaggerSupportFragment {
int position;
static ReviewOutOfContextFragment init(int val) {
ReviewOutOfContextFragment truitonFrag = new ReviewOutOfContextFragment();
// Supply val input as an argument.
Bundle args = new Bundle();
args.putInt("val", val);
truitonFrag.setArguments(args);
return truitonFrag;
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
position = getArguments() != null ? getArguments().getInt("val") : 1;
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View layoutView = inflater.inflate(R.layout.out_of_context_question_layout, container,
false);
View textView = layoutView.findViewById(R.id.testingText);
((TextView) textView).setText("Fragment #" + position);
Log.d("deneme","Fragment #" + position);
return layoutView;
}
}

View file

@ -0,0 +1,34 @@
package fr.free.nrw.commons.review;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentStatePagerAdapter;
/**
* Created by nes on 19.05.2018.
*/
public class ReviewPagerAdapter extends FragmentStatePagerAdapter {
public ReviewPagerAdapter(FragmentManager fm) {
super(fm);
}
@Override
public int getCount() {
return 3;
}
@Override
public Fragment getItem(int position) {
switch (position) {
case 0: // Fragment # 0 - This will show image
return ReviewOutOfContextFragment.init(position);
case 1: // Fragment # 1 - This will show image
return ReviewOutOfContextFragment.init(position);
default:// Fragment # 2-9 - Will show list
return ReviewOutOfContextFragment.init(position);
}
}
}

View file

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent"
android:layout_height="match_parent">
</android.support.constraint.ConstraintLayout>