- Swipe, um das nächste Fragment mit einem button-Klick
Hier ist mein code:
FirstView.java
import android.content.Intent;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.TextView;
public class FirstView extends Fragment
{
private TextView firstText;
private Button btn;
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
{
View view = inflater.inflate(R.layout.fragment_view1,container,false);
firstText = (TextView)view.findViewById(R.id.viewOneText);
btn = (Button)view.findViewById(R.id.viewOneBtn);
btn.setOnClickListener(new ButtonEvent());
return view;
}
private class ButtonEvent implements OnClickListener
{
@Override
public void onClick(View v) {
//TODO Auto-generated method stub
new SecondView();
}
}
}
SecondView.java
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.TextView;
public class SecondView extends Fragment
{
private TextView secondText;
private Button secondViewBtn;
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
{
View view = inflater.inflate(R.layout.fragment_view2,container,false);
secondText = (TextView)view.findViewById(R.id.secondViewText);
secondViewBtn = (Button)view.findViewById(R.id.secondViewBtn);
secondViewBtn.setOnClickListener(new ButtonEvent());
return view;
}
private class ButtonEvent implements OnClickListener
{
@Override
public void onClick(View v) {
//TODO Auto-generated method stub
secondText.setText("Second View Text changed");
}
}
}
MainActivity.java
import android.os.Bundle;
import android.app.Activity;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentActivity;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentPagerAdapter;
import android.support.v4.view.PagerAdapter;
import android.support.v4.view.ViewPager;
import android.view.Menu;
public class MainActivity extends FragmentActivity {
private ViewPager viewPager;
private MyAdapter pageAdapter;
private static final int ITEMS = 2;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
viewPager = (ViewPager)findViewById(R.id.pager);
pageAdapter = new MyAdapter(getSupportFragmentManager());
viewPager.setAdapter(pageAdapter);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
//Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
public static class MyAdapter extends FragmentPagerAdapter {
public MyAdapter(FragmentManager fragmentManager) {
super(fragmentManager);
}
@Override
public int getCount() {
return ITEMS;
}
@Override
public Fragment getItem(int position) {
if(position==0)
{
return new FirstView();
}
else
{
return new SecondView();
}
}
}
}
In diesem code, wenn ich auf die Button
im FirstView, ich brauche zu bewegen, um die SecondView. Ich habe versucht, mit Intents
aber denke, es ist falsch. Dies ist aktuell mit der Swipe-Funktion, da der ViewPager
brauche ich, um diese zu bewegen, um die SecondView wenn der button angeklickt wird, mit der gleichen swipe-Funktionalität.
InformationsquelleAutor Yohan Weerasinghe | 2013-11-28
Du musst angemeldet sein, um einen Kommentar abzugeben.
Nur eine neue Methode hinzufügen, bewegt sich die Fragmente auf Ihre Aktivität:
und rufen Sie es von einem button-listener:
'MainActivity.java'
Ja, Sehr Gut. Danke
Die erste geht auf die Haupttätigkeit und die zweite geht an das fragment onclick-listener.
Dies ist, was ich gesucht habe, Danke 🙂
InformationsquelleAutor Mikalai Daronin
definieren Sie in Ihrer Tätigkeit die nachstehenden Funktionen:
dann rufen Sie Ihr layout:
und
InformationsquelleAutor Hasan A Yousef