Material – List item with main and secondary expand action

I am having some trouble deciding on where to place two actions in one list item.

This is how the list item looks like.

List item

So this design is V2, and in previous version the item only had one function in which case a click anywhere would bring you to a second page.

In this version there is also an arrow on the right side which causes the item to expand and reveal quick-access items which has a horizontal scroll to see all the items. Usually there are only three and most will fit on the screen, sometimes you would have to scroll a little bit.

Expanded area

I’ve kept the item click action where it bring you to the next page, but if you click on the arrow specifically the item will expand.

I’ve gotten some feedback where it seems confusing, and people expect the item to expand if you click anywhere on the item.

What’s a good way to separate these two actions? The quick access items in the expanded area are also available in the next page, but it could be useful to access those items faster since they are on the bottom of the next page.

I considered moving the page click to be an additional item in the expanded area.

All topic

how to create convert a page footer to a responsive material footer in angular 6?

I am trying to develop a page footer in angular 6. I am using angular material and not using bootstrap.

Can anyone help to change this code into the angular material syntax?

I want to convert this footer into the full responsive Material UI design.

If possible then can i make this footer as responsive as well ?

thank you

     ------------footer.component.html---------------------------
        
-------------footer.component.scss----------------------------------------- .app-footer { margin-top: 2em; text-align: center; vertical-align:middle; min-height: 100% } .app-footer-link { line-height: 1.5em; } .app-footer-link p { margin: 0; } .row/*:after*/ { display: flex; /*content: ""; display: table; clear: both;*/ } .firstrow/*:after*/ { display: flex; /*content: ""; display: table; clear: both;*/ padding-top: 20px; } .column { flex: 25%; /*width:20%;*/ float:left; font-size:12px; } .headingcolumn { flex: 25%; /*width:20%;*/ float:left; font-size:18px; /*line-height:12px;*/ } .maincolumnleft { flex: 50%; /*width: 50%;*/ float: left; } .maincolumnright { /*flex: 50%;*/ width: 50%; float: right; } .fullcolumn { width: 100%; /*flex:100%;*/ font-size: 12px; text-align: center; vertical-align: middle; } .heading{ font-size:18px; } @media screen and (max-width: 600px) { .column { /*flex:100%;*/ width: 100%; } .headingcolumn { /*flex: 100%;*/ width: 100%; } .maincolumnleft { /*flex: 100%;*/ width: 100%; } .maincolumnright { /*flex: 100%;*/ width: 100%; } } -------------------------------app.component.html---------

All topic

How to use Material Design in XAML Resources for an ArcGIS Pro SDK Add-In? [on hold]

I am in the process of creating a .NET add-in for ArcGIS Pro using the Material Design in XAML packages. I created a new UI within a wpf application project during testing and am now implementing it within the ArcGIS Pro add-in project.

enter image description hereenter image description here

This all works fine in a wpf application, the caveat is that in an ArcGIS Pro add-in there is no App.xaml file to define my application level resources ex: (shortened for visibility):


I’ve read this but it seemed more complex than necessary for my needs.

How can I use these resources without the presence of the App.xaml?

All topic

Van der Waals Forces Between Stacked Material and Another Material

If I have a material (1) and I approach another material which is made from a stack of two different materials [ (2) and (3) ], how can one calculate the Hamaker constant or Van der Waals force ?

enter image description here

Can I just assume that it is the sum of the force due to interaction of (1) with (2) and (1) with (3) ?

But that is strange, because this would mean that I can increase the force by making a stack of a lot of very thin alternating layers, instead of two thicker layers.

All topic

What does Material Design mean by ‘action’?

For context, I’m a web developer implementing a project using Material-UI a React framework that implements Google’s Material Design.

One of the difficulties I’m having with the Material UI API documentation is that it doesn’t provide much context for the purpose of it’s various contexts.

For example – the CardActionArea component just says

The API documentation of the CardActionArea React component.

So I’ve been going back to the source to understand what we mean by ‘Card Action Area’ (and how this differs from ‘CardActions’).

So the original Material documentation for Cards goes into a bit more detail:

Cards are surfaces that display content and actions on a single topic…

Actions

Primary action

The primary action area of a card is typically the card itself. Often cards are one large touch target to a detail screen on a subject.

Oh god, I’ve solved it. This question feels too well written to discard it now.

All topic

How do you straighten/bend wood planks without removing any material?

I have some 6′ long 2″x12″ planks of douglas fir that dried into a twist, I need to straighten it out but I don’t want to plane this any thinner. So basically I’m trying to bend the board back into shape.

I was thinking of doing something like physically twisting the board the other way past its yield point, and hoping the board does not snap. Maybe I could try steam bending to straighten wood.

I am planning on making 6′ long benches and shelves with this material, for indoor use.

All topic

Como transformar o observable de json em datasource para Angular Material 2

Esta retornando normalmente do banco,mas quando ele passa pro datasource fica vazio

component

import { Component, OnInit} from '@angular/core';
import { Tcp } from '../tcp';
import { TcpService } from '../../services/tcp.service';
import { MatTableDataSource } from '@angular/material';
import { Subscription } from 'rxjs';



@Component({
  selector: 'app-tcp',
  templateUrl: './tcp.component.html'
})
export class TcpComponent implements OnInit {
    tcps:Tcp[]=[];
    private tcpSub:Subscription;
    public dataSource:MatTableDataSource;
    constructor(public tcpS: TcpService){
    }
  ngOnInit() {
    this.tcpS.getTcps();
    this.tcpSub = this.tcpS.getTcpUpdateListener().subscribe((tcps:Tcp[]) => {
      this.tcps = tcps;
      this.dataSource = new MatTableDataSource(this.tcps);
    });
  }
  displayedColumns: string[] = ['name', 'reg', 'lvl'];



  applyFilter(filterValue: string) {
    this.dataSource.filter = filterValue.trim().toLowerCase();
  }
}
export interface Tcp {
     nometcp:string;
     regtcp:Number;
     niveltcp:Number;
}

Quando inicia ate renderiza a tabela com a quantidade de registros
inserir a descrição da imagem aqui

HTML:


Criar

Nome {{element.name}} Registro {{element.nometcp}} Nivel {{element.lvl}}

Services

import { Injectable } from '@angular/core';
import {HttpClient} from '@angular/common/http';
import { Tcp } from '../tcp/tcp';
import { Subject } from 'rxjs';
import { map } from 'rxjs/operators';
@Injectable({
  providedIn: 'root'
})
export class TcpService {
  private tcps: Tcp[] = [];
  private tcpsUpdated = new Subject();

  uri = 'http://localhost:3000/api/tcps';

  constructor(private http: HttpClient) { }

  getTcps(){
    this.http
      .get<{ message: string; tcps: any }>(
        this.uri
      )
      .pipe(map((tcpData) => {
        return tcpData.tcps.map(tcp => {
          return {
            registro: tcp.regtcp,
            nivel: tcp.niveltcp,
            nome: tcp.nometcp,
            id: tcp._id
          };
        });
      }))
      .subscribe(transformedTcps => {
        this.tcps = transformedTcps;
        this.tcpsUpdated.next([...this.tcps]);
      });
  }

  getTcpUpdateListener() {
    return this.tcpsUpdated.asObservable();
  }

  addTcp(nometcp: string, regtcp: Number,niveltcp:Number) {
    const tcp: Tcp = { id: null, nometcp: nometcp, regtcp: Number(regtcp),niveltcp: Number(niveltcp) };
    this.http
      .post<{ message: string, tcpId: string }>(this.uri, tcp)
      .subscribe(responseData => {
        const id = responseData.tcpId;
        tcp.id = id;
        this.tcps.push(tcp);
        this.tcpsUpdated.next([...this.tcps]);
      });
  }

  deleteTcp(tcpId: string) {
    this.http.delete(this.uri + tcpId)
      .subscribe(() => {
        const updatedTcps = this.tcps.filter(tcp => tcp.id !== tcpId);
        this.tcps = updatedTcps;
        this.tcpsUpdated.next([...this.tcps]);
      });
  }
}

All topic

Why does the strength of a sheet of material under strain increase with thickness?

For instance, why is a thick plywood table able to bear heavier loads than a thin plywood table?

I am aware of the concept of tensile strength but, seeing as that only says things about the strength of cross-sectional areas of material, I don’t see why greater thickness of materials tends to result in greater “practical” strength when the thickness of a sheet increases (after all, doesn’t cross-sectional area stay the same in that case)?

All topic

multi slider switch react or material-ui component

is there a multi slider switch react or material-ui component , something like this –
https://www.youtube.com/watch?v=d7oeRdoRyFk

All topic

Why does the strength of a material under strain increase with thickness?

For instance, why is thick plywood able to bear heavier loads than thin plywood?

I am aware of the concept of tensile strength but, seeing as that only says things about the strength of cross-sectional areas of material, I don’t see why greater thickness of materials tends to result in greater “practical” strength.

All topic