/dart-sample/src/main/java/com/f2prateek/dart/example/SampleActivity.java

https://github.com/h87kg/android-dart · Java · 69 lines · 42 code · 10 blank · 17 comment · 0 complexity · 0afd1a98878a94ea03b84948087a52ed MD5 · raw file

  1. /*
  2. * Copyright 2013 Jake Wharton
  3. * Copyright 2014 Prateek Srivastava (@f2prateek)
  4. *
  5. * Licensed under the Apache License, Version 2.0 (the "License");
  6. * you may not use this file except in compliance with the License.
  7. * You may obtain a copy of the License at
  8. *
  9. * http://www.apache.org/licenses/LICENSE-2.0
  10. *
  11. * Unless required by applicable law or agreed to in writing, software
  12. * distributed under the License is distributed on an "AS IS" BASIS,
  13. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  14. * See the License for the specific language governing permissions and
  15. * limitations under the License.
  16. */
  17. package com.f2prateek.dart.example;
  18. import android.app.Activity;
  19. import android.os.Bundle;
  20. import android.widget.TextView;
  21. import butterknife.ButterKnife;
  22. import butterknife.InjectView;
  23. import com.f2prateek.dart.Dart;
  24. import com.f2prateek.dart.InjectExtra;
  25. import com.f2prateek.dart.Optional;
  26. public class SampleActivity extends Activity {
  27. public static final String DEFAULT_EXTRA_VALUE = "a default value";
  28. public static final String EXTRA_STRING = "ExtraString";
  29. public static final String EXTRA_INT = "ExtraInt";
  30. public static final String EXTRA_PARCELABLE = "ExtraParcelable";
  31. public static final String EXTRA_OPTIONAL = "ExtraOptional";
  32. public static final String EXTRA_PARCEL = "ExtraParcel";
  33. public static final String EXTRA_WITH_DEFAULT = "ExtraWithDefault";
  34. @InjectExtra(EXTRA_STRING) String stringExtra;
  35. @InjectExtra(EXTRA_INT) int intExtra;
  36. @InjectExtra(EXTRA_PARCELABLE) ComplexParcelable parcelableExtra;
  37. @InjectExtra(EXTRA_PARCEL) ExampleParcel parcelExtra;
  38. @Optional @InjectExtra(EXTRA_OPTIONAL) String optionalExtra;
  39. @Optional @InjectExtra(EXTRA_WITH_DEFAULT) String defaultExtra = DEFAULT_EXTRA_VALUE;
  40. @InjectView(R.id.string_extra) TextView stringExtraTextView;
  41. @InjectView(R.id.int_extra) TextView intExtraTextView;
  42. @InjectView(R.id.parcelable_extra) TextView parcelableExtraTextView;
  43. @InjectView(R.id.optional_extra) TextView optionalExtraTextView;
  44. @InjectView(R.id.parcel_extra) TextView parcelExtraTextView;
  45. @InjectView(R.id.default_extra) TextView defaultExtraTextView;
  46. @Override protected void onCreate(Bundle savedInstanceState) {
  47. super.onCreate(savedInstanceState);
  48. setContentView(R.layout.activity_sample);
  49. ButterKnife.inject(this);
  50. Dart.inject(this);
  51. // Contrived code to use the "injected" extras.
  52. stringExtraTextView.setText(stringExtra);
  53. intExtraTextView.setText(String.valueOf(intExtra));
  54. parcelableExtraTextView.setText(String.valueOf(parcelableExtra));
  55. optionalExtraTextView.setText(String.valueOf(optionalExtra));
  56. parcelExtraTextView.setText(String.valueOf(parcelExtra.getName()));
  57. defaultExtraTextView.setText(String.valueOf(defaultExtra));
  58. }
  59. }