Android: представления не отображаются, а отображается только фон (группа просмотра) - PullRequest
0 голосов
/ 13 октября 2019

Вот моя проблема:

Я только что создал AboutActivity, к которому можно получить доступ через Menu из MainActivity.

Проблема заключается в том, что activity_about не показывает мне представления, состоящие из 2Textview и CircleImageView.

Вот представление проекта Activity_about.xml (и предварительный просмотр вопроса):

https://i.stack.imgur.com/33Rky.png

И вот коды:

MainActivity

package com.example.amgiwork
import android.content.Intent
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.util.Log
import android.view.Menu
import android.view.MenuItem
import androidx.recyclerview.widget.LinearLayoutManager
import androidx.recyclerview.widget.RecyclerView
import java.lang.Exception    

class MainActivity : AppCompatActivity() {
         private lateinit var rvEmployees: RecyclerView
         private var list: ArrayList<Employee> = arrayListOf()

         override fun onCreate(savedInstanceState: Bundle?) {
             super.onCreate(savedInstanceState)
             setContentView(R.layout.activity_main)

             rvEmployees = findViewById(R.id.rv_employees)
             rvEmployees.setHasFixedSize(true)

             list.addAll(EmployeeData.listData)
             showRecyclerList()
         }

         private fun showRecyclerList() {
             rvEmployees.layoutManager = LinearLayoutManager(this)
             val listHeroAdapter = ListEmployeeAdapter(list)
             rvEmployees.adapter = listHeroAdapter
         }

         private fun showAboutActivity() {
             try {
                 val intent = Intent(this, AboutActivity::class.java)
                 startActivity(intent)
                 finish()
             }
             catch (e: Exception) {
                 Log.w("showAboutActivity", e.message.toString())
             }
         }

         override fun onCreateOptionsMenu(menu: Menu): Boolean {
             menuInflater.inflate(R.menu.menu_main, menu)
             return super.onCreateOptionsMenu(menu)
         }

         override fun onOptionsItemSelected(item: MenuItem): Boolean {
             setMode(item.itemId)
             return super.onOptionsItemSelected(item)
         }
         private fun setMode(selectedMode: Int) {
             when (selectedMode) {
                 R.id.action_employee_list -> {
                 }
                 R.id.action_about -> {
                     showAboutActivity()
                 }
             }
         }
     }

AboutActivity

     package com.example.amgiwork

     import android.content.Intent
     import androidx.appcompat.app.AppCompatActivity
     import android.os.Bundle
     import android.util.Log
     import android.view.Menu
     import android.view.MenuItem
     import java.lang.Exception

     class AboutActivity : AppCompatActivity() {

         override fun onCreate(savedInstanceState: Bundle?) {
             super.onCreate(savedInstanceState)
             setContentView(R.layout.activity_about)

         }

         private fun showMainActivity() {
             try {
                 val intent = Intent(this, MainActivity::class.java)
                 startActivity(intent)
                 finish()
             }
             catch (e: Exception) {
                 Log.w("showMainActivity", e.message.toString())
             }
        }

         override fun onCreateOptionsMenu(menu: Menu): Boolean {
             menuInflater.inflate(R.menu.menu_main, menu)
             return super.onCreateOptionsMenu(menu)
         }

         override fun onOptionsItemSelected(item: MenuItem): Boolean {
             setMode(item.itemId)
             return super.onOptionsItemSelected(item)
        }
         private fun setMode(selectedMode: Int) {
             when (selectedMode) {
                 R.id.action_employee_list -> {
                     showMainActivity()
                 }
                 R.id.action_about -> {
                 }
             }
         }
     }

activity_about.xml

<?xml version="1.0" encoding="utf-8"?>
     <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
         xmlns:app="http://schemas.android.com/apk/res-auto"
         xmlns:tools="http://schemas.android.com/tools"
         android:layout_width="match_parent"
         android:layout_height="match_parent"
         android:background="@color/lightYellow">

         <LinearLayout
             android:layout_width="match_parent"
             android:layout_height="wrap_content"
             android:layout_gravity="center"
             android:layout_marginBottom="100dp"
             android:orientation="vertical"
             tools:ignore="UselessParent">

             <de.hdodenhof.circleimageview.CircleImageView
                 android:id="@+id/tv_dev_image"
                 android:layout_width="match_parent"
                 android:layout_height="190dp"
                 app:civ_border_color="@color/darkRed"
                 app:civ_border_width="5dp"
                 tools:src="@drawable/dev" />

             <TextView
                 android:id="@+id/tv_dev_name"
                 android:layout_width="match_parent"
                 android:layout_height="wrap_content"
                 android:layout_marginTop="10dp"
                 android:gravity="center"
                 android:maxLines="2"
                 android:textColor="@color/darkRed"
                 android:textSize="32sp"
                 android:textStyle="bold"
                 tools:text="Dyaksa Hanindito" />

             <TextView
                 android:id="@+id/tv_contact"
                 android:layout_width="match_parent"
                 android:layout_height="wrap_content"
                 android:layout_marginTop="15dp"
                 android:gravity="center"
                 android:maxLines="2"
                 android:textColor="@color/darkRed"
                 android:textSize="19sp"
                 tools:text="Contact :" />

             <TextView
                 android:id="@+id/tv_dev_email"
                 android:layout_width="match_parent"
                 android:layout_height="wrap_content"
                 android:gravity="center"
                 android:maxLines="2"
                 android:textColor="@color/darkRed"
                 android:textSize="19sp"
                 tools:text="dyaksa.hanindito@indosatooredoo.com" />
         </LinearLayout>
     </LinearLayout>

Я проверил на другом устройстве, а также запустил проект на другом компьютере, и результат все тот же.

1 Ответ

0 голосов
/ 13 октября 2019

Единственная неправильная вещь в том, что вы неправильно используете префикс tools в макете. Измените его на android в CircleImageView и каждом TextView, и все будет работать нормально.

...