PDA

View Full Version : Fragment



Saeid4110
شنبه 21 دی 1392, 16:29 عصر
سلام من اینجا باید چه کدی بنویسم تا به اکتیویتی دیگر برود؟(فرگمنت است)

package info.androidhive.slidingmenu;


import android.app.Fragment;
import android.content.Intent;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;

public class HomeFragment extends Fragment {

public HomeFragment(){}

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {

View rootView = inflater.inflate(R.layout.fragment_home, container, false);

Button button = (Button) rootView.findViewById(R.id.button1);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
startActivity(new Intent(HomeFragment.this, PagesFragment.class));
}
});

return rootView;
}
}


توی خط 27 ارور میده.

rubiks.kde
شنبه 21 دی 1392, 16:32 عصر
آیا PagesFragment یک اکتیوتی هست؟

بجای HomeFragment.this از getActivity(); استفاده کنید.

Saeid4110
شنبه 21 دی 1392, 16:52 عصر
نه یک فرگمنت است مثل هوم فرگمنت.ارور برطرف میشه ولی تو برنامه فورس کلوز میده اینم لینک پروژه:
http://www.uplooder.net/cgi-bin/dl.cgi?key=05a01f98d779c66ea69b2afb70421165

rubiks.kde
شنبه 21 دی 1392, 17:02 عصر
دوست عزیز شما باید یک اکتیویتی رو استارت کنید یا فرگمنتتون از نوع FragmentActivity باشه.

Saeid4110
شنبه 21 دی 1392, 17:45 عصر
خب منم تو پروژه یه اکتیویتی ساختم اون را استارت زدم اگه به پروژه نگاه کنید میبینید(اکتیویتی به نامoo)

Saeid4110
شنبه 21 دی 1392, 18:47 عصر
آقا به این پروژه یه نگاه میندازی خیلی لازم دارم؟

rubiks.kde
شنبه 21 دی 1392, 19:25 عصر
آقا به این پروژه یه نگاه میندازی خیلی لازم دارم؟

باشه یه نگاه میندازم

keyhan.taktaz
شنبه 21 دی 1392, 21:16 عصر
میشه بگید fragment چی هست؟
فرقش با activity چیه؟
منبع فارسی پیدا نکردم

shahin bahari
شنبه 21 دی 1392, 21:48 عصر
از توی یه فرگمنت نمی تونید یه فرگمنت دیگه رو به صفحه بیارید.باید از توی Fragment Activity که فرگمنت اول رو صدا کردید تعویض رو انجام بدید. یعنی event یه کلید تو فرگمنت اول یه در خواست رو به parent که یه Fragment Activity هست میفرسته (مثلا با یه Interface) بعد تو اکتیویتی اصلی این کد رو میزنید:

FragmentTransaction frt = getSupportFragmentManager()
.beginTransaction();
frt.replace(R.id.main_frame, new SecondFragment());
frt.commit();



میشه بگید fragment چی هست؟
فرقش با activity چیه؟
منبع فارسی پیدا نکردم
فرگمنت میشه یه بخشی از نمای برنامه. به جای این که همه چیز رو توی یه اکتیویتی بسازیم میایم تو یه فرگمنت میسازیم بعد این فرگمنت ها رو بسته به نیاز به اکتیویتی (که اینجا FragmentActivity میشه) اضافه میکنیم.
مزیتش این هست که انعطاف بیشتری روی کنترل محتوا داریم که این رو باید یه کم بیشتر آشنا بشید باهاش تا متوجه بشید. مثال هایی که نحوه ساخت فرگمنت رو داده یه نگاه بندازید خیلی کمکتون میکنه.

Saeid4110
یک شنبه 22 دی 1392, 13:25 عصر
میشه سورس رو بزارین؟