0
public class MainActivity extends AppCompatActivity
implements LoginSocial.OnFragmentInteractionListener, Updates.OnFragmentInteractionListener,View.OnClickListener,GoogleApiClient.OnConnectionFailedListener {
private SignInButton sign;
private GoogleApiClient googleApiClient;
static final int Set_Ringtone = 0;
static final int PICK_CONTACT_REQUEST = 1;
private static final int RC_SIGN_IN = 9001;
private String TAG;
private Toolbar toolbar;
private TabLayout tabLayout;
private ViewPager viewPager;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
FacebookSdk.sdkInitialize(getApplicationContext());
setContentView(R.layout.activity_main);
initializeControls();
loginWithFB();
toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
viewPager = (ViewPager) findViewById(R.id.viewpager);
setupViewPager(viewPager);
tabLayout = (TabLayout) findViewById(R.id.tabs);
tabLayout.setupWithViewPager(viewPager);
sign = (SignInButton)findViewById(R.id.sign_in_button);
sign.setOnClickListener(this);
}
@Override
public void onClick(View view) {
switch (view.getId())
{
case R.id.sign_in_button:
sign();
break;
}
}
private void sign() {
Intent signInIntent = Auth.GoogleSignInApi.getSignInIntent(googleApiClient);
startActivityForResult(signInIntent, RC_SIGN_IN);
}
@Override
public void onConnectionFailed(@NonNull ConnectionResult connectionResult) {
}
private void handleResult(GoogleSignInResult result) {
Log.d(TAG, "handleSignInResult:" + result.isSuccess());
if (result.isSuccess()) {
// Signed in successfully, show authenticated UI.
GoogleSignInAccount acct = result.getSignInAccount();
updateUI(true);
} else {
// Signed out, show unauthenticated UI.
updateUI(false);
}
}
private void updateUI(boolean b) {
}
private void setupViewPager(ViewPager viewPager) {
ViewPagerAdapter adapter = new ViewPagerAdapter(getSupportFragmentManager());
adapter.addFragment(new LoginSocial(), "ONE");
adapter.addFragment(new Updates(), "TWO");
viewPager.setAdapter(adapter);
}
@Override
public void onFragmentInteraction(Uri uri) {
}
class ViewPagerAdapter extends FragmentPagerAdapter {
private final List<Fragment> mFragmentList = new ArrayList<>();
private final List<String> mFragmentTitleList = new ArrayList<>();
public ViewPagerAdapter(FragmentManager manager) {
super(manager);
}
@Override
public Fragment getItem(int position) {
return mFragmentList.get(position);
}
@Override
public int getCount() {
return mFragmentList.size();
}
public void addFragment(Fragment fragment, String title) {
mFragmentList.add(fragment);
mFragmentTitleList.add(title);
}
@Override
public CharSequence getPageTitle(int position) {
return mFragmentTitleList.get(position);
}
}
TextView txtStatus;
LoginButton fb_login;
CallbackManager callbackManager;
private void initializeControls(){
callbackManager = CallbackManager.Factory.create();
txtStatus = (TextView) findViewById(R.id.txtStatus);
fb_login = (LoginButton) findViewById(R.id.fb_login);
}
private void loginWithFB(){
LoginManager.getInstance().registerCallback(callbackManager, new FacebookCallback<LoginResult>() {
@Override
public void onSuccess(LoginResult loginResult) {
txtStatus.setText("Login Success");
}
@Override
public void onCancel() {
txtStatus.setText("Login Cancelled.");
}
@Override
public void onError(FacebookException error) {
txtStatus.setText("Login Error:"+error.getMessage());
}
});
}
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
callbackManager.onActivityResult(requestCode, resultCode, data);
if (requestCode == RC_SIGN_IN) {
GoogleSignInResult result = Auth.GoogleSignInApi.getSignInResultFromIntent(data);
handleResult(result);
}
Hallo, ich kann meine App im Emulator nicht öffnen. Ich habe das Gefühl, dass es ein Problem mit Tablayout gibt. Ich habe den Code ohne Tablayout ausprobiert und es hat funktioniert. Aber in Tablayout öffnet es sich nicht. Bitte helfen Sie mit. Vielen Dank im Voraus –
Ich empfehle Ihnen, eine neue Frage zu stellen, da dies ein anderes Problem als die ursprüngliche Frage ist. Stellen Sie sicher, dass Sie das Fehlerprotokoll enthalten, um das Problem leichter identifizieren zu können. Ich werde mein Bestes versuchen, um zu helfen. – 345
Danke. Ich habe meine Frage zu diesem Link https://stackoverflow.com/questions/45000222/unable-to-open-the-app-in-emulator-due-to-tablayout-i-guess?noredirect=1#comment76974676_45000222 geschrieben. Vielen Dank –