in DownloadableFonts/app/src/main/java/com/example/android/downloadablefonts/MainActivity.java [65:124]
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
initializeSeekBars();
mFamilyNameSet = new ArraySet<>();
mFamilyNameSet.addAll(Arrays.asList(getResources().getStringArray(R.array.family_names)));
mDownloadableFontTextView = findViewById(R.id.textview);
ArrayAdapter<String> adapter = new ArrayAdapter<>(this,
android.R.layout.simple_dropdown_item_1line,
getResources().getStringArray(R.array.family_names));
final TextInputLayout familyNameInput = findViewById(R.id.auto_complete_family_name_input);
final AutoCompleteTextView autoCompleteFamilyName = findViewById(
R.id.auto_complete_family_name);
autoCompleteFamilyName.setAdapter(adapter);
autoCompleteFamilyName.addTextChangedListener(new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence charSequence, int start, int count,
int after) {
// No op
}
@Override
public void onTextChanged(CharSequence charSequence, int start, int count, int after) {
if (isValidFamilyName(charSequence.toString())) {
familyNameInput.setErrorEnabled(false);
familyNameInput.setError("");
} else {
familyNameInput.setErrorEnabled(true);
familyNameInput.setError(getString(R.string.invalid_family_name));
}
}
@Override
public void afterTextChanged(Editable editable) {
// No op
}
});
mRequestDownloadButton = findViewById(R.id.button_request);
mRequestDownloadButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String familyName = autoCompleteFamilyName.getText().toString();
if (!isValidFamilyName(familyName)) {
familyNameInput.setErrorEnabled(true);
familyNameInput.setError(getString(R.string.invalid_family_name));
Toast.makeText(
MainActivity.this,
R.string.invalid_input,
Toast.LENGTH_SHORT).show();
return;
}
requestDownload(familyName);
mRequestDownloadButton.setEnabled(false);
}
});
mBestEffort = findViewById(R.id.checkbox_best_effort);
}