Skip to content

Instantly share code, notes, and snippets.

View basilbeltran's full-sized avatar

Basil Beltran basilbeltran

View GitHub Profile
@basilbeltran
basilbeltran / MFragmentActivity.java
Last active August 29, 2015 14:26
FragmentActivity abstracted
public abstract class MFragmentActivity extends FragmentActivity {
protected abstract Fragment createFragment();
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_fragment);
FragmentManager fm = getSupportFragmentManager();
Fragment fragment = fm.findFragmentById(R.id.fragmentContainer);
if (fragment == null) {
fragment = createFragment(); // createFragment() the implemented method
fm.beginTransaction().add(R.id.fragmentContainer, fragment).commit();
@basilbeltran
basilbeltran / MActivity.java
Last active August 29, 2015 14:26
FragmentActivity called with intent
public class MActivity extends MFragmentActivity {
//simple case
protected Fragment createFragment(){ return new MFragment();} // no need for MFragment to have newInstance()
// -or- if your fragment needs data (see MListFragment for the explicit Intent call)
// call the Activity with Intent; pass along extra (UUID in this template) for arg to MFragment
protected Fragment createFragment() {
UUID data = (UUID)getIntent().getSerializableExtra(MFragment.EXTRA_M_ID);
return MFragment.newInstance(id);}
}
@basilbeltran
basilbeltran / MFragment.java
Last active August 29, 2015 14:26
Fragment with arg
public class MFragment extends Fragment {
private DataObject mDataObject;
public static final String EXTRA_M_ID = "com.your.apps.extra_id";
public static MFragment newInstance(UUID id) { // set the args
Bundle args = new Bundle();
args.putSerializable(EXTRA_M_ID, id);
MFragment fragment = new MFragment();
fragment.setArguments(args);
return fragment;}
public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState);
@basilbeltran
basilbeltran / MListFragment.java
Last active August 29, 2015 14:26
A ListFragment and its ArrayAdapter
public class MListFragment extends ListFragment { private static final String TAG = "MListFragment";
private ArrayList<DataObject> mArrayList;
public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState);
mArrayList = DataStoreSingleton.get(getActivity()).getObjects();
MAdapter adapter = new MAdapter(mArrayList);
setListAdapter(adapter); } // ListFragment METHOD
private class MAdapter extends ArrayAdapter<DataObject> {
public MAdapter(ArrayList<DataObject> mArrayList) { super(getActivity(), 0, mArrayList); }
public View getView(int position, View convertView, ViewGroup parent){
@basilbeltran
basilbeltran / listeners
Last active August 29, 2015 14:26
various view listeners
public View onCreateView(LayoutInflater inflater, ViewGroup parent, Bundle savedInstanceState) {
View v = inflater.inflate(R.layout.fragment_m, parent, false);
//Button
mButton = (Button) v.findViewById(R.id.data_date);
mButton.setText(object.getDate().toString()); // mDateButton.setEnabled(false);
mButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
}
});
// calling class:
//FragmentManager fm = getActivity().getSupportFragmentManager();
//MDialogFragment mDialogFragment = MDialogFragment.newInstance(object.getDate());
//mDialogFragment.setTargetFragment(MFragment.this, REQUEST_DATE);
//mDialogFragment.show(fm, DIALOG_DATE);
@basilbeltran
basilbeltran / Options
Last active August 29, 2015 14:26
ActionBar Options
extends ListFragment {
private boolean mSubtitleVisible; //instance vbl retained
onCreate...
setHasOptionsMenu(true); //Fragment will be implementing options menu callbacks on behalf of the activity.
setRetainInstance(true); //retain
mSubtitleVisible = false; //retain is for preserving menu state through rotation event
@TargetApi(11) // if ( minSdk < API < 11) !Lint; you have accounted for VERSION_CODE and under
onCreateView...
@basilbeltran
basilbeltran / MISC CMD LINE
Last active August 29, 2015 14:26
misc android blocks
android:theme="@android:style/Theme.Holo">
Toast.makeText(getContext(), text/resId, Toast.LENGTH_SHORT).show();
$ ./gradlew tasks
$ ./gradlew installDebug
@basilbeltran
basilbeltran / States
Created August 7, 2015 04:55
Android State Transitions
private static final String KEY_VAL = "valofit";
private static final String KEY_TRUE = "isittrue";
protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState);
if (savedInstanceState != null) {
mCurrentVal = savedInstanceState.getInt(KEY_VAL, 0);
mIsTrue = savedInstanceState.getBoolean(KEY_TRUE, false);
public void onSaveInstanceState(@NonNull Bundle savedInstanceState) { super.onSaveInstanceState(savedInstanceState);
savedInstanceState.putInt(KEY_VAL, mCurrentVal);
@basilbeltran
basilbeltran / datgui-build.js
Created October 17, 2018 22:41 — forked from heaversm/datgui-build.js
Automatically build a dat gui from a javascript object
config = { //SAMPLE OBJECT - replace this with your data object
stroke: 2, //svg stroke value
opacity: 0.3, //0-1
offsetX: 120, //px
offsetY: 80,
fontWeight: 400, //css font-weight
fontSize: 12, //in px
changePositive: '\u25B4', //unicode character for up arrow
changeNegative: '\u25BE', //unicode character for down arrow
colorBlue: '#1190A3', //all hex colors will automatically use the addColor dat gui function