উদাসিতার বেসিক এ্যানড্রয়েড কোর্সের ট্যুর গাইড অ্যাপটিতে আমি টুকরো ধারণাটি ব্যবহার করেছি। স্ট্রিংস, এক্সএমএল ফাইলে বর্ণিত কিছু স্ট্রিং রিসোর্সগুলি অ্যাক্সেস করতে অসুবিধার সম্মুখীন হয়ে আমি কিছুক্ষণ আটকে গেলাম। অবশেষে একটি সমাধান পেয়েছি।
এটি মূল ক্রিয়াকলাপ শ্রেণি
প্যাকেজ com.example.android.tourguidek কলকাতা;
import android.os.Bundle;
import android.support.design.widget.TabLayout;
import android.support.v4.view.ViewPager;
import android.support.v7.app.AppCompatActivity;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState)
{
//lines of code
//lines of code
//lines of code
YourClass adapter = new YourClass(getSupportFragmentManager(), getApplicationContext());
//lines of code
// getApplicationContext() method passses the Context of main activity to the class TourFragmentPageAdapter
}
}
এটি অ-ক্রিয়াকলাপ শ্রেণি যা ফ্রেগমেন্টপেজএডাপ্টার প্রসারিত করে
public class YourClass extends FragmentPagerAdapter {
private String yourStringArray[] = new String[4];
Context context;
public YourClass (FragmentManager fm, Context context)
{
super(fm);
this.context = context; // store the context of main activity
// now you can use this context to access any resource
yourStringArray[0] = context.getResources().getString(R.string.tab1);
yourStringArray[1] = context.getResources().getString(R.string.tab2);
yourStringArray[2] = context.getResources().getString(R.string.tab3);
yourStringArray[3] = context.getResources().getString(R.string.tab4);
}
@Override
public Fragment getItem(int position)
{
}
@Override
public int getCount() {
return 4;
}
@Override
public CharSequence getPageTitle(int position) {
// Generate title based on item position
return yourStringArras[position];
}
}
Context
অ্যান্ড্রয়েডে অবজেক্টগুলির কাছাকাছি যাওয়া ভাল ধারণা নয় । এটি স্মৃতি ফাঁস হতে পারে। কম ঝুঁকিপূর্ণ সমাধানের জন্য আমার উত্তরটি দেখুন।