Android 설정 화면에 도구 모음 2가 표시됩니다.
3797 단어 preferencsAndroid
개요
저번 투고에서 선호 헤더에 도구막대를 추가했지만 진정으로 원하는 것은 단순한 설정 화면에 헤더를 추가하는 것뿐이다.드디어 이루어졌기 때문에 이번에는 그 방법을 기술해 보겠습니다.
컨디션
IDE:Android Studio 3.0.1
목표:mashmallow 이후
실현 방법에 관하여
개략
IDE:Android Studio 3.0.1
목표:mashmallow 이후
실현 방법에 관하여
개략
출처
SettingsActivity.java
public class SettingsActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_settings);
// initialize toolbar
this.initializeToolBar();
// Display the fragment as the main content.
getFragmentManager().beginTransaction()
.replace(R.id.fragment_container, new SettingsActivity.SettingsFragment())
.commit();
}
private void initializeToolBar() {
Toolbar toolbar = (Toolbar) findViewById(R.id.settingsToolbar);
setSupportActionBar(toolbar);
toolbar.setNavigationOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
onBackPressed();
}
});
// 戻るボタンの追加
ActionBar actionBar = this.getSupportActionBar();
if (actionBar == null) {
return;
}
actionBar.setDisplayHomeAsUpEnabled(true);
}
public static class SettingsFragment extends PreferenceFragment {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// Load the preferences from an XML resource
addPreferencesFromResource(R.xml.pref_settings);
}
}
}
res/layout/activity_settings.xml
<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
・・・
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<android.support.v7.widget.Toolbar
android:id="@+id/settingsToolbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:elevation="4dp"
android:background="?attr/colorPrimary"
android:minHeight="?attr/actionBarSize"
android:theme="?attr/actionBarTheme" />
<FrameLayout
android:id="@+id/fragment_container"
android:layout_width="match_parent"
android:layout_height="match_parent"
/>
</LinearLayout>
</android.support.design.widget.CoordinatorLayout>
감상
이번 참고 페이지에서 존경할 만한 것은 LinerLayout에서 도구막대와 프레임 레이아웃을 설정하고 프레임 레이아웃의 세션을 Preference Fragment로 바꾸는 것이다.많은 샘플이android입니다.R.id.content를 자주 바꾸기 때문에 도구막대 아래에 설정을 표시하기 어렵습니다.코드가 이동하고 하고 있는 일을 이해했을 때 너무 즐거웠어요.
참고 자료
Reference
이 문제에 관하여(Android 설정 화면에 도구 모음 2가 표시됩니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/kyamawaki/items/da994b9f47cbc390363d
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(Android 설정 화면에 도구 모음 2가 표시됩니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/kyamawaki/items/da994b9f47cbc390363d텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)